Как передать файл через шпатлевку

Обновлено: 21.11.2024

при вызове SCP в PuTTY на моем компьютере с Win7 он не позволяет мне использовать C:/, но я также понятия не имею, где на моей локальной машине он будет искать файлы по умолчанию. Ни один из каталогов программ или каталогов пользователей не работал. Например, я сохранил файл file.txt рядом с PuTTY.exe, а также в C:\Users\Me, но вызов SCP file.txt file.txt в PuTTY оба раза не удался с

Итак, как передать файл на мой сервер с помощью PuTTY?

EDIT: Кроме того, вызов SCP file.txt myserver:file.txt дает аналогичную ошибку: file.txt: Нет такого файла или каталога

Я не думаю, что одна замазка может справиться с этой задачей. WinSCP — хороший инструмент с графическим интерфейсом для безопасного копирования файлов, Putty отлично справляется с этой задачей, также используя инструмент командной строки под названием pscp.

6 ответов 6

Вы пробовали что-то вроде

Страница загрузки Putty позволяет загрузить putty.zip — полный набор инструментов Putty, или вы можете просто загрузить необходимые инструменты (в этом случае вы могли загрузить putty.exe, но еще не загрузили pscp.exe)< /p>

У меня установлена ​​шпатлевка. Кажется, у меня нет pscp ни в оболочке шпатлевки, ни в моей локальной оболочке. Не могли бы вы пролить немного больше света? Откуда вы запускаете pscp? Удачи!

@JonnyLeeds: я запускаю его в командной строке Windows (cmd) из каталога установки Putty, например. C:\Program Files (x86)\PuTTY\pscp.exe в моем случае. Вы можете либо поместить полный путь в двойные кавычки (из-за пробелов в нем), либо добавить каталог в свой %PATH% (см. другие ответы здесь, чтобы узнать, как это сделать).

Привет, спасибо за ответ, но все, что у меня есть в моей папке putty, это putty.exe, puttygen.exe и файл ppk

Отличный ответ. Еще один приятный момент: вы можете часто использовать точку после двоеточия удаленного местоположения, если вы не знаете, куда вы хотите, чтобы файл попал. Например: pscp -l имя пользователя C:\dir\file.txt server:.

Решение, не использующее PuTTY: подключитесь к серверу с помощью FileZilla, используя SFTP для передачи файлов.

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

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

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

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

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

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

13 ответов 13

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

Я попробовал WinScp, но мне нужно запустить команду на коробке, чтобы получить привилегии. Это невозможно с помощью WinScp?

@user470184: верно. Обычно я использую Putty и WinSCP одновременно. На самом деле вы можете начать с WinSCP, а затем есть контекстное меню, чтобы «открыть этот сайт в Putty», если вы того пожелаете.

WinSCP не подключается к серверу, поскольку сервер использует учетные данные с помощью закрытого ключа. WinSCP не поддерживает ключ SSH-1. Я ищу программу, как поддерживать этот тип ключа. есть идеи?

  • Нажмите на меню "Пуск".
  • Нажмите "Выполнить".
  • В открывшемся окне введите cmd и нажмите "ОК".
  • В командной строке введите:

И вы можете инвертировать его следующим образом: 'c:>pscp wrhse@warehouse.cit.cornell.edu:/mydata/november2012 november2012' для получения файлов с удаленного компьютера.

pscp является частью пакета шпатлевки, но его не было в моем пути, поэтому мне нужно было добавить его в свой путь, прежде чем это сработает. pscp должен находиться в том же месте, что и исполняемый файл putty. в моем случае c:\Program Files (x86)\PuTTY.

@SheshraoWankhede можно ли как-то объединить pscp с ssh-keygen для обхода пароля? заранее спасибо

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

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

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

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

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

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

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

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

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

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

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

(я автор WinSCP)

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

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

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

Это прекрасно работает с текстовыми файлами, которые помещаются в буфер обмена. Для двоичных файлов см. xxd, но вам также понадобится программа Windows для преобразования двоичного файла в шестнадцатеричный. например HEXDUMP

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

Теперь в удаленной системе запустите это в одной строке:

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, чтобы сопоставить двоичный файл с чем-то, что вы можете распечатать (а затем декодировать в своей локальной системе):

Сэр, вы гений! Я некоторое время искал способ передачи файлов через активный сеанс SSH, и это первый способ, который я могу легко заставить работать. Знаете ли вы, можно ли изменить этот метод для работы с терминалом на клиенте на базе macOS или Linux (т. е. на терминалах, отличных от PuTTY)?

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

@user470184 Если вам удалось прожить два года, не зная, как это сделать, некоторые инструкции о том, как это можно сделать, можно найти внизу: >этой страницы

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

В чем смысл установки PATH=C:\PuttySetupLocation? Почему бы вам не сделать C:\PuttySetupLocation\pscp напрямую? - Даже если вы хотите изменить PATH , вы должны добавить новый путь, а не сбрасывать его полностью.

Запуск set PATH=C:\PuttySetupLocation не сбрасывает путь, а только добавляет PSCP к пути в качестве новой записи. Кроме того, вы правы насчет использования C:\PuttySetupLocation\pscp. Это также может быть допустимо.

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

Запускайте программу PuTTY SSH (Secure Shell), когда вам нужно установить безопасное зашифрованное сетевое соединение с удаленным компьютером Unix/Linux, на котором хранятся нужные вам файлы. Обратите внимание, что программа PuTTY сама по себе не копирует файлы, а только устанавливает соединение между вашим компьютером и удаленной машиной. Для получения файлов вы используете родственную программу pscp.exe, входящую в состав PuTTY. Запустите исполняемый файл pscp.exe в командной строке Windows, чтобы быстро скопировать файлы с удаленного компьютера на жесткий диск локального компьютера.

Линукс и Windows

Такая программа, как PuTTY, необходима для облегчения работы между компьютерами на базе Microsoft Windows и компьютерами, работающими под управлением "разновидностей" Linux, таких как Fedora, Ubuntu и Debian. Программы, работающие в Windows, не работают в Linux, и наоборот. PuTTY служит «мостом» между двумя системами, позволяя вам получать доступ к ресурсам Linux при использовании ПК с Windows.

PUTTY в ваших руках

Открыть командную строку Windows

Нажмите кнопку «Пуск» на компьютере с Windows и щелкните поле «Выполнить» или «Поиск». Введите cmd в поле, нажмите клавишу Enter, и появится окно командной строки. В Windows 10 командная строка отображается в списке результатов поиска.Щелкните ее, чтобы открыть командную строку.

Найти программу pscp

В командной строке введите cd /path_to_pscp/, заменив /path_to_pscp/ точным путем к файлу «pscp.exe». Нажмите клавишу ввода.

Запустить безопасное копирование (pscp)

Введите pscp.exe username@xxxx:/file_path/filename c:\directory\filename в командной строке, но замените «username» на имя учетной записи, у которой есть разрешения на доступ к удаленному компьютеру через SSH, замените «xxxx » на IP-адрес или имя хоста удаленного SSH-компьютера, замените «file_path» на путь к каталогу файла, который вы хотите получить, замените «filename» на фактическое имя файла, который вы хотите передать, и замените «directory» с путем и именем каталога, в котором вы хотите сохранить файл на локальном компьютере.

Передача файлов по SSH

Нажмите клавишу ввода. Введите пароль для учетной записи, авторизованной для подключения к удаленному компьютеру SSH, если будет предложено, и снова нажмите Enter. Файл будет передан и сохранен на локальном компьютере.

WinSCP — альтернатива PuTTY

Другая бесплатная программа, WinSCP, также позволяет передавать файлы почти так же, как PuTTY. В отличие от командной строки PuTTY, в которой используются вводимые вами команды, WinSCP имеет удобный и простой в использовании графический интерфейс пользователя (GUI). WinSCP отображает два списка файлов: один в текущем каталоге на вашем ПК с Windows, а другой в удаленном каталоге Linux, в который вы вошли. Вы выбираете файлы, которые хотите передать, а затем перетаскиваете их в список другого каталога.

Как загрузить файл из Unix в Windows с помощью PuTTY?

Установить PuTTY SCP (PSCP)

Как переместить файл из Unix в Windows?

Нажмите на сервер UNIX, с которого вы хотите передать файлы. Щелкните правой кнопкой мыши экспортированную папку и выберите «Копировать» (или нажмите CTRL+C). Щелкните правой кнопкой мыши целевую папку на компьютере под управлением Windows и выберите "Вставить" (или нажмите CTRL+V).

Могу ли я использовать PuTTY для передачи файлов?

PuTTY — это бесплатная консоль Win32 Telnet с открытым исходным кодом (под лицензией MIT), приложение для передачи файлов по сети и клиент SSH. PuTTY поддерживает различные протоколы, такие как Telnet, SCP и SSH. Он может подключаться к последовательному порту.

Как перенести файлы из Linux в Windows?

  1. Найдите и откройте «Файл» > «Диспетчер сайтов».
  2. Нажмите "Новый сайт".
  3. Установите протокол SFTP (протокол передачи файлов SSH).
  4. Задайте для имени хоста IP-адрес компьютера Linux.
  5. Установите тип входа в систему как обычный.
  6. Добавьте имя пользователя и пароль для компьютера с Linux.
  7. Нажмите "Подключиться".

Как загрузить файл из PuTTY на локальный сервер?

Чтобы получить файлы, используйте родственную программу pscp.exe, входящую в состав PuTTY. Запустите исполняемый файл pscp.exe в командной строке Windows, чтобы быстро скопировать файлы с удаленного компьютера на жесткий диск локального компьютера.

Как скопировать файлы из Linux в Windows с помощью SCP?

Как обмениваться файлами между Unix и Windows?

И в Unix, и в Windows есть команды для этого. Чтобы обмениваться файлами между двумя типами систем, вы можете использовать Samba. Samba — это реализация сетевых протоколов SMB/CIFS. Таким образом, он работает в системе Unix и позволяет системам Windows получать доступ к каталогам Unix или смонтировать общие ресурсы Windows в системах Unix.

Как передать файл по FTP из Unix в Windows?

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

  1. Перейдите в исходный каталог в локальной системе. …
  2. Установите FTP-соединение. …
  3. Перейдите в целевой каталог. …
  4. Убедитесь, что у вас есть разрешение на запись в целевой каталог. …
  5. Установите двоичный тип передачи. …
  6. Чтобы скопировать один файл, используйте команду put. …
  7. Чтобы скопировать несколько файлов одновременно, используйте команду mput.

Как скопировать файл из Unix в локальную Windows?

  1. Установите sshpass на компьютере с Linux, чтобы пропустить запрос пароля.
  2. Сценарий. sshpass -p ‘xxxxxxx’ scp /home/user1/*.* [электронная почта защищена]:/d/test/

Как перенести файлы из putty в Windows?

  1. Загрузите файл PSCP.EXE со страницы загрузки Putty.
  2. Откройте командную строку и введите set PATH=file>
  3. В командной строке укажите расположение файла pscp.exe с помощью команды cd.
  4. Введите pscp.
  5. используйте следующую команду, чтобы скопировать файл с удаленного сервера на локальную систему pscp [options] [[email protected]]host:source target.

Как вы копируете из PuTTY?

КОПИРОВАНИЕ: Просто выделите текст в PuTTY. Нажмите и удерживайте левую кнопку мыши + переместите мышь, чтобы выделить нужный текст + отпустите левую кнопку мыши, и текст будет скопирован в буфер обмена.

Может ли PuTTY FTP?

PSFTP, клиент PuTTY SFTP, представляет собой инструмент для безопасной передачи файлов между компьютерами с использованием соединения SSH. PSFTP отличается от PSCP следующим образом: PSCP должен работать практически на каждом SSH-сервере. … PSFTP позволяет запускать интерактивный сеанс передачи файлов, очень похожий на программу Windows ftp.

Могу ли я получить доступ к файлам Windows из Linux?

Из-за природы Linux, когда вы загружаетесь в Linux-половину системы с двойной загрузкой, вы можете получить доступ к своим данным (файлам и папкам) на стороне Windows без перезагрузки в Windows. И вы даже можете отредактировать эти файлы Windows и сохранить их обратно в половину Windows.

Читайте также: