Sen kullanmak isteyebilirsiniz -w
ile killall
bunun için:
-w, --wait
Wait for all killed processes to die. killall checks
once per second if any of the killed processes still exist
and only returns if none are left. Note that killall may
wait forever if the signal was ignored, had no effect,
or if the process stays in zombie state.
Bu yüzden killall -w rogue_agents
yeterli olurdu.
Düzenleme : Düzenlemenizdeki ek bonus sorusu için ...
( kill -9
belirli bir süre sonra yükseltmek hakkında ) Aşağıdakileri deneyebilirsiniz:
(şu anda kendim deneyemiyorum çünkü sahtekarlık işlemim yok: )
timeout 8 killall -w rogue_agents
timeout 8 killall -9 -w rogue_agents
Bu killall
bir bekleme ile yapacak . timeout 8
O yapabileceğiniz bundan sonra sadece 8 saniye bekleyin yapar killall -9
. Ben de onu 8 saniye beklettim. Eğer killall -9
8 saniye sonra yapılmazsa orada yanlış bir şey gerçekten ve manuel soruşturma gerekir.
Elbette, testten sonra ancak killall
8 saniye sonra ilk başlangıçtan sonra hala rogue_agents varsa, ikinci satırı çalıştırmak için test yapabilirsiniz . İşlem ikinci saniyeden sonra hala etkinse, hatalı bir yankı killall -9
.