Você não pode capturar SIGKILL (e SIGSTOP ), portanto, não é possível ativar seu manipulador personalizado para SIGKILL .
Você pode pegar todos os outros sinais, então talvez tente fazer um design em torno deles.
Além disso, ao fazer:
pkill myscript
seja o padrão pkill enviará SIGTERM , não SIGKILL , o que obviamente pode ser detectado.
Por exemplo, dentro do seu script, na parte superior, adicione:
trap 'echo foobar' TERM
O shell trap embutido é usado para interceptar um sinal e despachar qualquer manipulador personalizado, ou ignorar o sinal completamente.
Aqui o comando echo foobar será executado quando o shell receber TERM .
Você também pode fazer o mesmo para outros sinais; modifique também o comando para atender sua necessidade. Por exemplo, executando echo foobar e executando um script de manipulador personalizado:
trap 'echo foobar; /my/custom/handler.sh' TERM
Se você planeja exit depois disso:
trap 'echo foobar; /my/custom/handler.sh; exit' TERM