Eu escrevi um script test.sh (sua função é o mesmo que o comando "hostname") como abaixo,
#!/bin/bash
printf "'uname -a | awk '{print $2;}'' "
Eu posso pegar meu nome de host com
source /home/arton/test.sh
ou
/home/arton/test.sh
Em seguida, emiti o comando
ssh myhost "source /home/arton/test.sh"
e espera receber "myhost", mas eu tenho a saída total de uname -a
Linux myhost 2.6.32-431.el6.x86_64 #1 SMP Fri Nov 22 03:15:09 UTC 2013 ...
Depois de tentar e errar, os comandos abaixo podem gerar "myhost"
ssh myhost "/home/arton/test.sh"
ssh myhost "bash -s" < /home/arton/test.sh
Mas ainda não sei por que isso acontece.