Как отправить, вывод Unix управляют с одного сервера на другой сервер?

Если Вы знаете учетные данные другому пользователю (someuser) можно просто указать его на Вашем scp звонить.

От man scp страница:

Имена файлов могут содержать пользователя и разместить спецификацию, чтобы указать, что файл должен быть скопирован в тот хост. Локальные имена файлов могут быть сделаны явными использующими абсолютными или относительными путями для предотвращения scp, рассматривающего имена файлов, содержащие ‘:’ как размещают спецификаторы. Копии между двумя удаленными хостами также разрешены.

Вот используемый синтаксис:

[[user@]host:]/path/to/file

Пример

Вы хотите скопировать файл /home/foo/bar от host1 к Вашему localhost, с помощью пользователя someuser, вот команда:

scp someuser@host1:/home/foo/bar .

Вас попросят аутентификации (пароль, ключи...).

9
22.08.2014, 01:02
3 ответа

Вы можете запустить:

ssh remote_server "command" > file_on_local_host. txt

или использовать вывод в качестве входа для локальной команды:

ssh remote_server "remote_command" | local_command

5
27.01.2020, 20:04

Общее, вы всегда можете сделать:

<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"
20
27.01.2020, 20:04

Так как вы не можете напрямую соединиться с сервером 1 на сервер 2, вы можете использовать это, имея локальную машину посередине:

ssh server1 command | ssh server2 "cat > output.txt"
1
27.01.2020, 20:04

Теги

Похожие вопросы