Я написал скрипт test.sh (его функция аналогична команде "hostname"), как показано ниже,
#!/bin/bash
printf "`uname -a | awk '{print $2;}'` "
Я могу получить свое имя хоста с
source /home/arton/test.sh
или же
/home/arton/test.sh
Затем я выпустил команду
ssh myhost "source /home/arton/test.sh"
и ожидал получить "myhost", но я получил общий вывод uname -a
Linux myhost 2.6.32-431.el6.x86_64 #1 SMP Fri Nov 22 03:15:09 UTC 2013 ...
После попытки и ошибки приведенные ниже команды могут вывести "myhost"
ssh myhost "/home/arton/test.sh"
ssh myhost "bash -s" < /home/arton/test.sh
Но я до сих пор понятия не имею, почему это происходит.