Geri bildirimle öldürme şekli var mı?


0

killGeri bildirim sağlamak için bir çatal veya linux komutunun kolay bir modu var mı ? Bu döngüyü önlemek istiyorum:

ps acx | grep rogue_agents
killall rogue_agents # alternately, kill 007
ps acx | grep rogue_agents # did it work?

kill -9Belirli bir süre sonra yükseltilirse iyi bir bonus olur .


1
pkill, ilk iki çizgiyi bir araya getirebilir.
Journeyman Geek

Yanıtlar:


3

Sen kullanmak isteyebilirsiniz -wile killallbunun 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_agentsyeterli olurdu.


Düzenleme : Düzenlemenizdeki ek bonus sorusu için ...
( kill -9belirli 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 killallbir bekleme ile yapacak . timeout 8O yapabileceğiniz bundan sonra sadece 8 saniye bekleyin yapar killall -9. Ben de onu 8 saniye beklettim. Eğer killall -98 saniye sonra yapılmazsa orada yanlış bir şey gerçekten ve manuel soruşturma gerekir.

Elbette, testten sonra ancak killall8 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.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.