Saindo de um script chamado de outro script via SSH

1

Suponha que o script bash X esteja sendo chamado dentro de outro script bash Y. Se eu executar diretamente o script X em uma máquina local, após a conclusão de X, o programa sairá no terminal.

No entanto, quando executo o script Y remotamente via SSH, o terminal (remoto) "trava" após a conclusão do X e não sai mesmo se X contiver um comando exit no final.

Como fazer o script Y sair após a conclusão de chamadas de script fechadas ou passar para o próximo comando quando executado via SSH?

//scriptY.sh
#!/bin/bash
...
ssh -i $ssh_key $user@$host source $dir/scriptX.sh
//scriptX completes fine on SSHed machine, but remote machine hangs here
...

EDITAR:

Outro detalhe, que pode ser útil. Mais dentro, há este script sendo chamado, que contém o comando exec .

    
por Oleg Shirokikh 08.07.2015 / 19:40

1 resposta

0

Isso provavelmente significa que seu script executa algo em segundo plano (com um &) que mantém o terminal tge aberto. Quando seu script termina, algo continua funcionando. O ssh detecta isso e não fecha a sessão até que algo saia.

Para ajudar você a fazer o script fazer o que quiser, é necessário postar o script.

    
por 08.07.2015 / 22:00