Se eu entendi bem o seu pedido, você não precisa fazer um grep na variável $PPID
, que é usada, talvez, até mesmo pela última execução de script chamada, mas no PID do último script chamado: $$
.
Se você chamar script.sh
usando o mesmo bash
, $PPID
será o mesmo para todas as outras execuções do script script.sh
(ou Alert_notifications.sh
no seu caso).
Tente alterar algo em seu comando e adicionar um pouco de controle (se quiser):
ps -fu $USER | grep "Alert_notification.sh" | grep -v "grep\|$$" | awk '{print $2}' | xargs kill 2> /dev/null
-
2> /dev/null
: você precisa dele para omitir mensagens de erro no caso de algum não será encontrado nenhum processo