Использование putty для scp из окон в Linux
Я пытаюсь проверить код C, который я пишу. Единственная проблема заключается в том, что код должен выполняться на удаленной машине.
Мой ноутбук довольно старый, и нет драйвера для моей беспроводной карты, доступной для Ubuntu, поэтому загрузка в Linux, чтобы обойти эту проблему, не является вариантом.
Вот мой вопрос:
Я использую putty для 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
Что я делаю неправильно?
Ответы
Ответ 1
Вам нужно сообщить 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/
Ответ 2
Вы можете использовать PSCP для копирования файлов из Windows в Linux.
- Загрузить PSCP с сайта putty.org
- Открыть cmd в каталоге с файлом pscp.exe
-
Введите команду pscp source_file [email protected]:destination_file
Справка
Ответ 3
Используйте scp priv_key.pem source [email protected]:target
, если вам нужно подключиться с помощью закрытого ключа.
или, используя pscp, используйте pscp -i priv_key.ppk source [email protected]:target
Ответ 4
Введите hostname
чтобы выяснить ваше имя хоста. Если у источника назначения есть имя папки с пробелом, используйте pscp "C:\my folder\text.txt" [email protected]: /folder
Ответ 5
Вы можете использовать Cmder все, что вам нужно сделать, это добавить каталог bin
cmder к вашему пути в окнах и вы можете использовать аналогичный синтаксис linux, такой ls
grep
...
включая scp
со следующей командой:
scp [email protected]:/target/path