Ответы:
Используйте scp
-команду, она работает поверх SSH. Пример:
scp username@remote.host:/path/to/file localfile
Это также работает в другую сторону
scp localfile username@host:/path/remotefile
Имя пользователя, путь и имя файла могут быть опущены (но не :
!).
Как сказал Иэн, SFTP также работает, но я склоняюсь к scp
его cp
использованию.
-p
опцию при копировании файлов или папок с помощью scp
. Он также копирует атрибуты файла (временные метки и флаги). Я нахожу, что хочу -p
чаще, чем не хочу!
-3
флаг: scp -3 jeff@firsthost.com:/files/file1.zip brad@secondhost.com:/archives
Это полезно, если вам нужно использовать закрытый ключ для доступа к обоим серверам, найденным только на локальном хосте: scp -3i /local/path/to/.ssh/private_key dan@host1:/path/to/file.txt miri@host2:/path/to/upload/dir/
индикатор выполнения отключен для -3
Вы также можете использовать rsync
для этого. Может работать над SSH.
rsync -avvP
мой любимый файл и / или папки, но есть один недостаток: его нужно установить на удаленной машине.
-e ssh
команду rsync для подключения через ssh.
Если вы не можете использовать scp
или SFTP, вы можете использовать tar
поверх SSH:
tar cf - . | ssh otherhost "cd /mydir; tar xvf -"
Это также хорошо, если у вас есть редкие файлы, которые в противном случае «взорвутся».
scp username@remote1:/path/to/file username@remote2:/path/to/file