é possível obter a saída padrão da máquina remota - 100 ou 1, depois de arruinar o script /tmp/script.bash?
ssh $remote_machine /tmp/script.bash
echo $? ( from remote machine script - not from ssh ! )
na máquina remota -
more /tmp/script.badsh
#!/bin/bash
command
[[ $? -eq 0 ]] && exit 100 || exit 1
Parece que você deseja o valor de saída do script remoto (
$?
) e não stdout (a saída dos scripts de acordo com o seu título)A página de manual do ssh diz isso
Portanto, se o seu script estiver funcionando corretamente, ele retornará 100. Se não estiver, existem algumas possibilidades
command
não está saindo com 0[[ ... ]]
está incorreto, o que parece certo, acho que- eq
deveria ser-eq
1 .1 OP editou sua pergunta e removeu o erro óbvio do ponto 2 acima. Resta-nos concluir que o ponto 1 está correto.