Использование шпатлевки для scp из Windows в Linux

Я пытаюсь протестировать некоторый код C, который я пишу. Единственная проблема заключается в том, что код должен выполняться на удаленной машине. Мой ноутбук довольно старый, и для Ubuntu нет драйвера для моей беспроводной карты, поэтому загрузка в Linux для обхода этой проблемы не вариант. Вот мой вопрос:

Я использую шпатлевку для SSH на удаленной машине и пишу свой код на Notepad++. Расположение моего файла: C:\Users\Admin\Desktop\WMU\5260\A2.c

Моя проблема в том, что когда я использую команду scp C:\Users\Admin\Desktop\WMU\5260\A2.c ~, я получаю сообщение об ошибке could not resolve hostname C:. Name or service not known".

Я также пробовал scp Users\Admin\Desktop\WMU\5260\A2.c ~, который дает мне ошибку Cannot stat 'Users\Admin\Desktop\WMU\5260\A2.c': no such file or directory

Что я делаю неправильно?


person Chris Phillips    schedule 05.02.2014    source источник


Ответы (3)


Вам нужно указать scp, куда отправить файл. В вашей команде, которая не работает:

scp C:\Users\Admin\Desktop\WMU\5260\A2.c ~

Вы не упомянули удаленный сервер. scp использует : для разграничения хоста и пути, поэтому он думает, что вы попросили его загрузить файл по пути \Users\Admin\Desktop\WMU\5260\A2.c с хоста C в ваш локальный домашний каталог.

Правильная команда загрузки, основанная на ваших комментариях, должна выглядеть примерно так:

C:\> pscp C:\Users\Admin\Desktop\WMU\5260\A2.c [email protected]:

Если вы запускаете команду из своего домашнего каталога, вы можете использовать относительный путь:

C:\Users\Admin> pscp Desktop\WMU\5260\A2.c [email protected]:

Вы также можете указать каталог, в который вы хотите загрузить эту папку на удаленном сервере. то есть просто добавив путь к папке, как показано ниже:

C:/> pscp C:\Users\Admin\Desktop\WMU\5260\A2.c [email protected]:/home/path_to_the_folder/
person nobody    schedule 05.11.2014
comment
Можете ли вы уточнить, что это частично расширение Putty, и его может потребоваться добавить в PATH, если вы не переключитесь на каталог шпатлевки? Я был сбит с толку, откуда взялся pscp, это было почти как намек на то, что он уже есть в Dos, что отбросило меня в сторону. Вот ссылка, которая описывает, что PSCP — это расширение шпатлевки, которое у вас есть, и, возможно, вам потребуется добавить его в ваш PATH и т. д. it.cornell.edu/managed-servers/transfer-files-using-putty - person blamb; 28.02.2021

Вы можете использовать PSCP для копирования файлов из Windows в Linux.

  1. Загрузите PSCP с сайта putty.org.
  2. Откройте cmd в каталоге с файлом pscp.exe
  3. Введите команду pscp source_file user@host:destination_file

Справочник

person Swaps    schedule 30.06.2015
comment
шпатлевка, возможно, уже пришла с ним, в зависимости от версии, которую вы установили, ее может просто не быть в пути. см. ссылку на мой комментарий к ответу @nobody. - person blamb; 28.02.2021

Используйте scp priv_key.pem source user@host:target, если вам нужно подключиться с помощью закрытого ключа.

или если вы используете pscp, используйте pscp -i priv_key.ppk source user@host:target

person s4ndhyac    schedule 24.11.2016