Передача файлов в / из сессии Я вошел в систему с помощью PuTTY - PullRequest
58 голосов
/ 31 марта 2011

Я вошел на удаленный хост, используя PuTTY.

Что такое команда для передачи файлов с моего локального компьютера на компьютер, на котором я вошел в PuTTY?

Ответы [ 10 ]

57 голосов
/ 31 марта 2011

Это, вероятно, не прямой ответ на ваш вопрос, но когда мне нужно передать файлы через сеанс SSH, я использую WinSCP , которая является отличной программой передачи файлов по SCP или SFTP.Конечно, это предполагает, что вы находитесь на Windows.

32 голосов
/ 01 ноября 2012

  • Нажмите на меню Пуск.
  • Нажмите run
  • В открывшемся окне введите cmd, затем нажмите ok
  • В командной строке введите:

    c:> pscpимя_файла_источника имя_пользователя @ имя_сервера: /path/destination_file_name.

Например:

c:> pscp ноябрь2012 wrhse@warehouse.cit.cornell.edu: /mydata/november2012.

  • При появлении запроса введите пароль для сервера.

Наслаждайтесь

14 голосов
/ 31 марта 2011

PuTTY обычно поставляется с клиентом psftp, который вы можете использовать для этой цели. Я не верю, что вы можете сделать это через стандартный клиент PuTTY (хотя я могу ошибаться в этом).

PuTTY дает вам доступ только для манипулирования удаленной машиной. Он не обеспечивает прямую связь между двумя файловыми системами, так же как и на удаленной машине.

7 голосов
/ 03 марта 2015

Нет способа инициировать передачу файла обратно в / из локальной Windows из сеанса SSH, открытого в окне PuTTY.

Хотя PuTTY поддерживает совместное использование соединения.

Хотя вам все еще нужнозапустить совместимый клиент для передачи файлов (pscp или psftp), новый вход в систему не требуется, он автоматически (если включен) использует существующий сеанс PuTTY.

Чтобы включить общий доступ, см .:
Совместное использование SSH-соединения между инструментами PuTTY .


Альтернативным способом является использование WinSCP, клиента SFTP / SCP с графическим интерфейсом.Пока вы просматриваете удаленный сайт, вы можете в любое время открыть SSH-терминал на тот же сайт, используя кнопку Открыть в PuTTY .

См. Открытие сеанса в PuTTY .

С помощью дополнительной настройки вы даже можете сделать так, чтобы PuTTY автоматически переходил в тот же каталог, который вы просматриваете с помощью WinSCP.

См. Открытие PuTTY в том же каталоге .

(я автор WinSCP)

6 голосов
/ 12 июля 2013

Вы также можете скачать psftp.exe из:

http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html

Когда вы запускаете его, вы набираете:

open "server name"

Тогда:

put "file name"

(Введите help, чтобы получить полный список команд.)

Вы также можете набрать get <file name> для загрузки файлов с удаленного компьютера на локальный компьютер.

4 голосов
/ 20 декабря 2013

Если это только один файл, вы можете использовать следующую процедуру (в замазке):

  1. vi filename.extension (открывает новое имя файла в активной папке на сервер),
  2. копирование + щелчок правой кнопкой мыши над замазкой (копирование и вставка),
  3. редактировать и сохранять. => команды редактора vi

Изменить разрешение файла с помощью следующей команды: chmod u + x filename.extension

2 голосов
/ 08 ноября 2018

Так как вы спрашивали о / из, вот трюк, который работает для части «от».Откройте экран «Изменить настройки ...» в терминале и в разделе «Принтер» отправлять выходные данные принтера ANSI на: «выберите« Общий / только текст »

Теперь в удаленной системе выполните следующую строку:

tput mc5; cat whatever.txt; tput mc4

Putty сообщит вам, что файл был сохранен.Для этого нужно перевести терминал в режим принтера (tput mc5), распечатать файл на экране (cat), а затем отключить режим принтера (tput mc4).Если вы не поместите все команды в одну строку, экран будет заморожен, потому что Putty сохраняет все выходные данные терминала в файл в фоновом режиме.

Если вы работаете в более ограниченной системе, которая не 'Если у вас есть команда tput (например, qnap), вы можете попробовать printf "\ x1b [5i" вместо tput mc5 и printf "\ x1b [4i" вместо tput mc4.

Команда в серединеэто просто все, что печатает на экран.Поэтому используйте tail -n 10000 blah.log для загрузки последних 10 тыс. Строк файла журнала или используйте кодировщик base64 для сопоставления двоичного файла с чем-то, что вы можете напечатать (а затем декодировать в локальной системе):

printf "\x1b[5i"; openssl enc -base64 -in something.zip; printf "\x1b[4i"
2 голосов
/ 12 апреля 2017

Если вам нужно сделать проверку закрытого ключа; в командной строке (cmd), запустите

Во-первых,

set PATH=C:\PuttySetupLocation

Во-вторых,

pscp -i C:/MyPrivateKeyFile.ppk C:/MySourceFile.jar ubuntu@55.69.41.155:/home/ubuntu

Также, если вам нужны дополнительные опции, посмотрите следующую ссылку. https://the.earth.li/~sgtatham/putty/0.60/htmldoc/Chapter5.html

2 голосов
/ 31 марта 2011

Смотрите здесь:

http://web.archive.org/web/20170106202838/https://it.cornell.edu/services/managed_servers/howto/file_transfer/fileputty.cfm#puttytrans

Рекомендуется использовать pscp.exe от PuTTY, который можно найти здесь: https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html

Прямая передача, такая как FTP, невозможна, поскольку все команды во время сеанса отправляются на сервер.

1 голос
/ 19 марта 2018

Передача файлов с помощью Putty (pscp / plink.exe)

Установка замазки по умолчанию предоставляет несколько способов передачи файлов. Скорее всего, putty находится на вашем пути по умолчанию, поэтому вы можете напрямую позвонить putty из командной строки. Если это не так, возможно, вам придется изменить переменные среды. Смотрите инструкции здесь: https://it.cornell.edu/managed-servers/transfer-files-using-putt

Steps

  1. Откройте командную строку, набрав cmd

  2. Для переноса папок с вашего компьютера Windows на другой компьютер Windows использовать (обратите внимание на флаг -r, который указывает, что файлы будут передается рекурсивно, не нужно их застегивать) pscp -r -i C:/Users/username/.ssh/id_rsa.ppk "C:/Program Files (x86)/Terminal PC" ipython_user@10.15.48.54:/"C:/Program Files (x86)/"

  3. Для передачи файлов с вашего компьютера Windows на другой компьютер Windows использовать: pscp -i C:/Users/username/.ssh/id_rsa.ppk "C:/Program Files (x86)/Terminal PC" ipython_user@10.15.48.54:/"C:/Program Files (x86)/"

  4. Иногда может быть установлен только plink. plink потенциально может использоваться для передачи файлов, но лучше всего ограничиваться простыми текстовыми файлами. Это может иметь неизвестное поведение с двоичными файлами (https://superuser.com/questions/1289455/create-text-file-on-remote-machine-using-plink-putty-with-contents-of-windows-lo): plink -i C:/Users/username/.ssh/id_rsa.ppk user@host <localfile "cat >hostfile"

  5. Для передачи файлов с сервера Linux на компьютер с Windows в Linux использование компьютера pscp -r -i C:/Users/username/.ssh/id_rsa.ppk "C:/Program Files (x86)/Terminal PC" username@10.15.48.16:/home/username

Чтобы все это работало, вам необходимо иметь надлежащий открытый / закрытый ключ. к сгенерируйте это для замазки, см .: https://superuser.com/a/1285789/658319

...