Então, o que você quer é executar um script local remotamente.
Claro, você pode fazer o seguinte:
ssh [email protected] 'echo "$(hostname):My text" >> ~/test.output'
Mas você também pode mover esse código para um arquivo de script e fazer isso:
ssh [email protected] < myscript.sh
E dentro myscript.sh :
echo "$(hostname):My text" >> ~/test.output
Se você não quiser colocar o redirecionamento stdout dentro do script, você pode adicioná-lo antes de canalizar o cliente ssh. Por exemplo:
cat myscript.sh | sed '1iexec >> ~/test.output' | ssh [email protected]
Isso adiciona o redirecionamento do stdout à primeira linha do script ( 1i
). Use 2i
se você tiver um shebang .