Eu tenho um script que usará o ssh para executar um comando em um nó remoto. O nó remoto é um dispositivo, portanto não posso (sem encorajamento) fazer alterações nele. Agora eu tenho um script como este:
ssh REMOTE-NODE -l login "ls" > output 2>&1
status=$?
Assim $status
terá o status do comando ssh. Como posso obter o $?
status do comando remoto (ls neste exemplo, mas para qualquer comando chamado)? Não consigo criar um script intermediário no nó remoto que possa retornar o status.
Não
ssh
devolve normalmente?Embora, como @thrig sugere nos comentários, se o cliente ssh for encerrado devido a um sinal,
$?
pode mostrar o número de sinal 128+ usual em vez de 255, mesmo que não seja o código de saída do comando remoto. Em vez disso, em um teste rápido, parece que se o comando remoto sair por sinal,ssh
retorna 255.