Я пытаюсь скопировать файлы, используя безопасное копирование (scp). Я пытаюсь выполнить следующую команду, но я получаю сообщение об ошибке из-за пробела в абсолютном пути расположения каталога.
scp -r -P 8484 root@172.31.72.103:/media/New Volume/lj /home/pratheep
Я получаю следующую ошибку:
scp: /media/New: No such file or directory
scp: Volume/lj: No such file or directory
Я попытался использовать ту же команду, добавив дополнительный слеш, как
scp -r -P 8484 root@172.31.72.103:/media/New\ Volume/lj /home/pratheep
но я все еще получаю ту же ошибку.
Может кто-нибудь сказать мне, как это исправить?
linux
command-line
scp
pradeepchhetri
источник
источник
scp
используется вssh
качестве своего транспорта, который объясняет, почему происходит два прохода интерпретации оболочки.scp
иrsync
передать имена удаленных файлов в удаленную оболочку. Это позволяет вам передавать шаблоны, как вно это имеет неприятное следствие, что вам нужно дополнительное цитирование при указании имени удаленного файла.
Вы можете передать
-s
опцию, чтобыrsync
она защищала имена файлов от расширения удаленной оболочкой. Но это включает встроенное расширение rsync, поэтому вам все равно нужно заключать в кавычки\[?*
.Обходной путь - передать архив:
Другой способ - смонтировать удаленную файловую систему, а затем использовать обычные инструменты для выполнения копирования.
источник