
Eu executo um script remoto usando ssh:
roteiro local:
local_command
ssh -p 222 user@server 'sh -s' < ./remote_run.sh
script remoto:
some_command &
sleep 10000
trap 'echo exiting' SIGINT SIGTERM SIGABRT SIGKILL EXIT
Preciso de uma armadilha no script remoto para limpeza (eliminar processos em execução e remover arquivos). Mas a abordagem usada não funciona.
Alguma sugestão?
Responder1
Tentei e funcionou perfeitamente.
ssh -p 222 user@server "nohup ./remote_run.sh"
e em remote_run.sh
some_command &
sleep 10000
ps -aux | grep "[r]emote_run.sh" | awk '{print $2}' | xargs kill -9
#killed
obviamente, o script é transferido primeiro para o host remoto. :)