Копирование файлов в режиме SSHed на компьютер

530
Peter David Carter

Я пытаюсь загрузить некоторые файлы веб-сайта на компьютер, на котором установлен SSH, и я не уверен, какую команду использовать. Я попытался найти cpинструкции по команде, но не могу понять, что добавить в пространство для удаленной машины, так как я понимаю, что мой локальный IP-адрес будет маскироваться извне.

Итак, как мне узнать, какой у меня локальный IP-адрес для копирования файлов с моего компьютера на удаленный сервер через командную строку, доступную на удаленном сервере? (Я предполагаю, что на данном этапе команда cpLinux будет лучшим способом сделать это?)

В настоящее время я могу загружать файлы только через интерфейс C-Panel, который довольно громоздкий и позволяет копировать только один файл за раз, что по мере роста веб-сайта может стать более серьезной проблемой.

Любая помощь будет очень, очень ценится.

1
эта ссылка может быть полезной - ответ на предыдущий вопрос - http://stackoverflow.com/questions/3710946/copying-files-across-computers-using-ssh-and-mac-os-x-terminal Mike Diglio 8 лет назад 0
Спасибо, Майк, ссылка полезна, но я до сих пор не понимаю, как узнать мой локальный IP-адрес и использовать его в команде cp. Похоже, что ссылка, которую вы разместили, содержит информацию о том, как использовать scp, но не о том, как узнать ваш IP и / или имя хоста, как они распознаются удаленным сервером. Peter David Carter 8 лет назад 0

1 ответ на вопрос

2
moonpoint

Вы должны использовать команду scp, которая позволяет копировать файлы из одной системы в другую, используя протокол SSH, а не команду cp. Если ваш локальный компьютер является системой Linux или OS X, то, скорее всего, у вас уже есть scp в системе. Если ваш локальный компьютер является системой Microsoft Windows, и вы используете PuTTY, у него также есть утилита командной строки, pscp. Или вы можете использовать WinSCP, который предоставляет графический интерфейс пользователя (GUI).

Чтобы скопировать несколько файлов одновременно, вы можете использовать команду scp, аналогичную приведенной ниже, при условии, что вы хотите скопировать все html-файлы в текущем каталоге вашей локальной системы на сервер example.com и сохранить их в каталоге с именем public_html на удаленная система. Путь к каталогу в удаленной системе будет соответствовать вашему домашнему каталогу в этой системе. Вы также можете указать свой домашний каталог с помощью ~, например ~/public_html/. Точка в конце указывает, что вы хотите присвоить файлам то же имя в удаленной системе, что и в локальной системе.

scp *.html your_remote_username@example.com:public_html/. 

См. Scp или sftp copy нескольких файлов с помощью одной команды для других примеров копирования нескольких файлов.

Вы должны запустить команду за пределами вашего текущего сеанса SSH. Эта sshкоманда предназначена для интерактивных входов в систему, тогда как команда sftpscp или, наоборот, запускается отдельно для передачи файлов.

Вам не нужно знать ваш локальный IP-адрес для команды. Но, если вы хотите узнать свой локальный IP-адрес, вы можете получить его, посетив WhatIsMyIP с браузером в вашей локальной системе. Чтобы использовать команду scp, вам нужно знать только свой локальный IP-адрес, если вы копировали файлы в обратном направлении из удаленной системы в вашу локальную систему. В этом случае локальная система также должна функционировать как SSH-сервер и иметь соответствующие правила брандмауэра.