Я использую OpenSSH и имею следующий сценарий bash с именем foo для Debian 8 (Jessie) Linux:
#!/bin/bash
ssh root@10.0.0.60 "$1"
if [[ $? ]]; then
echo "Pass"
else
echo "Fail"
fi
Я выполняю этот скрипт следующим образом:
root@my_host:~/bin# foo 'echo "Hello world!"'
Hello world!
Pass
root@my_host:~/bin# foo true
Pass
root@my_host:~/bin# foo false
Pass
root@my_host:~/bin# foo not_a_command
bash: not_a_command: command not found
Pass
Я явно не могу успешно захватить код завершения удаленно выполняемой команды. Как я могу это сделать?