scp e rsync transmitem nomes de arquivos remotos para o shell remoto. Isso permite que você passe padrões, como em
scp remotehost:'*.txt' .
mas tem a consequência desagradável de que você precisa de uma cotação extra ao fornecer um nome de arquivo remoto.
Você pode passar a opção -s para rsync para proteger os nomes de arquivos da expansão pelo shell remoto. Mas isso ativa a expansão de curingas do rsync, então você ainda precisa citar \[?* .
Uma solução alternativa é transferir um arquivo:
ssh -P 8484 [email protected] 'cd "/media/New Volume" && tar cf - lj' |
tar xf - -C /home/pratheep
Outro método é montar o sistema de arquivos remoto e, em seguida, usar ferramentas comuns para realizar a cópia.
mkdir mnt
sshfs -p 8484 [email protected]:/ mnt
cp -Rp 'mnt/media/New Volume/lj' /home/pratheep
fusermount -u mnt
rmdir mnt