Если Вы знаете учетные данные другому пользователю (someuser
) можно просто указать его на Вашем scp
звонить.
От man scp
страница:
Имена файлов могут содержать пользователя и разместить спецификацию, чтобы указать, что файл должен быть скопирован в тот хост. Локальные имена файлов могут быть сделаны явными использующими абсолютными или относительными путями для предотвращения scp, рассматривающего имена файлов, содержащие ‘:’ как размещают спецификаторы. Копии между двумя удаленными хостами также разрешены.
Вот используемый синтаксис:
[[user@]host:]/path/to/file
Пример
Вы хотите скопировать файл /home/foo/bar
от host1
к Вашему localhost, с помощью пользователя someuser
, вот команда:
scp someuser@host1:/home/foo/bar .
Вас попросят аутентификации (пароль, ключи...).
Вы можете запустить:
ssh remote_server "command" > file_on_local_host. txt
или использовать вывод в качестве входа для локальной команды:
ssh remote_server "remote_command" | local_command
Общее, вы всегда можете сделать:
<command> | ssh user@remote-server "cat > output.txt"
Это сохраняет вывод <команды>
в вывод . txt
файл на удаленном сервере.
В вашем случае, на сервере-1:
echo "qwerty" | ssh user@Server-2 "cat > output.txt"
Если два сервера не имеют соединения, но вы можете ssh на оба сервера, то с локальной машины вы можете сделать:
ssh user@Server-1 "<command>" | ssh user@Server-2 "cat > output.txt"
Так как вы не можете напрямую соединиться с сервером 1 на сервер 2, вы можете использовать это, имея локальную машину посередине:
ssh server1 command | ssh server2 "cat > output.txt"