Как скопировать файлы по ssh?
(Update: Если вы пришли с поиска и вам действительно нужно узнать, как скопировать файлы по ssh, то не читайте дальше эту заметку, а читайте “Как же все-таки скопировать файлы по ssh?“).
Я понимаю, что “многие вещи нам не понятны не потому, что наши понятия слабы; но потому, что сии вещи не входят в круг наших понятий”. Но все равно, уж очень забавно.
Суть. На topcoder в новом типе соревнований в одном задании в итоге нужно выложить файлы на сервер. Сервер с Linux. Людям дали ssh-доступ, рассказали в картинках, как залогиниться из-под Windows при помощи putty. Но вот что дальше с этим делать, как скопировать файлы на сервер? Задача очень сложная, и пользователи делятся решениями на форуме:
Причем использовать “команду vi” для этих целей посоветовал один из организаторов соревнования.
Я понимаю, что “многие вещи нам не понятны не потому, что наши понятия слабы; но потому, что сии вещи не входят в круг наших понятий”. Но все равно, уж очень забавно.
Суть. На topcoder в новом типе соревнований в одном задании в итоге нужно выложить файлы на сервер. Сервер с Linux. Людям дали ssh-доступ, рассказали в картинках, как залогиниться из-под Windows при помощи putty. Но вот что дальше с этим делать, как скопировать файлы на сервер? Задача очень сложная, и пользователи делятся решениями на форуме:
Напомню, это все для того, чтобы скопировать файлы на сервер.
We use vi editor to edit files on server:
One way of updating code:
copy data from desktop file using cntrl+c
––-Login to VM ––––––—
open file using command: vi index.html
switch to command mode: ctrl+[
delete existing code: 1000dd // delete thousan lines of code starting from line-1
paste modified code: p or mouse right-click
save and exit: :wq // colon “:” are part of the command.
The user must understand that there are two modes in vi editor.
1. insert mode: to type your code or text data
========================================================================
2. command mode: to execute below mentioned commands
ctrl+[ = switch to command mode
:q = to quit application
:q! = to quit without saving
:wq = to save and quit
d = to delete a single char
dd = to delete a line
[count]dd = to delete mutiple lines; usage: 300dd to delete 300 line from cursor
p = to paste contents
========================================================================
i = to toggle to insert mode
========================================================================
When u want to edit a file type: vi filename e.g.: vi index.html
to recover a file type: vi -r filename
========================================================================
I hope this may help many new users!
Причем использовать “команду vi” для этих целей посоветовал один из организаторов соревнования.






Comments
winscp умеет передавать файлы по протоколу ssh
Я-то об этом знаю, хотя Windows практически не пользуюсь.
Суть поста в том, что люди делают через жопу и других учить берутся, даже не задумываясь о том, что что-то здесь явно не так и стоит может в google ввести что-то типа “windows ssh file copy”.
Молодцы, это они так ненавязчиво подсаживают людей на вим :)
Хорошо, что в этом задании пару всего файлов надо скопировать. А если б пару десятков?
Да и так с двумя файлами можно vim вместе с Linux возненавидеть, там тестировать надо на сервере и копировать часто.
Зато можно работать с файлами прямо на сервере и ничего не копировать.
Повеселился, спасибо :D
Когда лень использовать scp, на помощь приходит zip + base64 + nano :-) Оказывается быстрее, чем вводить длинные пути и пароли.