2015-06-15 3 views
1

Я хочу захватить вывод shell SSH-скрипта в файл и получить его на stdout. Я знаю, что могу использовать tee, но он, похоже, не работает, как я ожидаю в этом случае.Как я могу выполнить вывод сценария ssh?

Пример,

#!/bin/sh 

ssh [email protected] | tee /tmp/a << EOF 
echo hi 
EOF 

Я ожидаю hi быть в /tmp/a, вместо этого он выглядит как ssh ждет навсегда для ввода.

Если я заменяю ssh с cat он работает, как я ожидал

#!/bin/sh 

cat | tee /tmp/a << EOF 
hi 
EOF 

Output: hi 

$ cat /tmp/a 
hi 

В чем разница между ssh и cat здесь?

ответ