Подтвердить что ты не робот

Как скопировать файл с удаленного сервера на локальный компьютер?

В моей оболочке терминала я ssh'ed на удаленный сервер, а я cd в каталог, который я хочу. Теперь в этом каталоге есть файл с именем table, который я хочу скопировать на мой локальный компьютер /home/me/Desktop. Как я могу это сделать?

Я попробовал scp table /home/me/Desktop, но он дал ошибку об отсутствии такого файла или каталога. Кто-нибудь знает, как это сделать?

Спасибо

4b9b3361

Ответ 1

Например, ваш удаленный хост - example.com, а удаленное имя для входа - user1:

scp [email protected]:/path/to/file /path/to/store/file

Ответ 2

Операция scp отдельно от вашего входа ssh. Вам нужно будет выдать команду ssh, аналогичную следующей, если предположить, что jdoe - это учетная запись, с которой вы входите в удаленную систему и что удаленная система example.com:

scp [email protected]:/somedir/table /home/me/Desktop/.

Команда scp, выданная из системы, где /home/me/Desktop находится, сопровождается идентификатором пользователя для учетной записи на удаленном сервере. Затем вы добавляете ":", за которым следует путь каталога и имя файла на удаленном сервере, например, /somedir/table. Затем добавьте пробел и место, в которое вы хотите скопировать файл. Если вы хотите, чтобы файл имел то же имя в клиентской системе, вы можете указать это с периодом, то есть ".". в конце пути к каталогу; если вы хотите другое имя, вы можете использовать /home/me/Desktop/newname. Если вы использовали нестандартный порт для соединений SSH, вам нужно указать этот порт с "-P n" (капитал P), где "n" - номер порта. Стандартный порт равен 22, и если вы не укажете его для SSH-соединения, вам это не понадобится.

Ответ 3

Когда вы используете scp, вы должны указать имя хоста и IP-адрес, из которого вы хотите скопировать файл. Например, если вы находитесь на удаленном хосте и хотите перенести файл на свой компьютер, вы можете использовать что-то вроде этого:

scp -P[portnumber] myfile_at_remote_host [user]@[your_ip_address]:/your/path/

Пример:

scp -P22 table [email protected]:/home/me/Desktop/

С другой стороны, если вы на самом деле находитесь на своем компьютере, вы можете использовать что-то вроде этого:

scp -P[portnumber] [remote_login]@[remote's_ip_address]:/remote/path/myfile_at_remote_host /your/path/

Пример:

scp -P22 [fake_user] @222.222.222.222:/remote/path/table/home/me/Desktop/

Ответ 4

Я бы рекомендовал использовать sftp, используйте эту команду sftp -oPort=7777 [email protected], где -oPort - это пользовательский номер порта ssh, в случае, если u изменил его на 7777, тогда вы можете использовать -oPort, иначе, если использовать только порт 22, тогда просто sftp [email protected], который запрашивает пароль, тогда вы можете войти в систему, и u можете перейти к нужному местоположению с помощью cd /home/user, тогда простая команда get table u может загрузить его, если u хочет загрузить каталог/папку get -r someDirectory сделаю это. Если вы хотите, чтобы права на файл также существовали, тогда get -Pr someDirectory. Для загрузки на удаленное изменение вы можете ввести выше команды.