Nasıl bash biri hariç tüm python işlemleri öldürmek için


11

Bir python betiği hariç tüm python işlemlerini bash'tan nasıl öldürebilirim. (Adını biliyorum, ancak pid'i bazen değiştirilebilir).

Ben tür pkill -f "python"ama python belirli komut dosyası hariç.

Tavsiye lütfen.

Yanıtlar:


13

ps aux |grep python |grep -v 'pattern_of_process_you_dont_want_to_kill' |awk '{print $2}' |xargs kill

Güncelleme: yorumlarda istendiği gibi adım adım açıklama

  • ps aux |grep python- eşleşen pythonkalıpla ilgili tüm işlemleri göster
  • grep -v 'pattern_of_process_you_dont_want_to_kill' - öldürmek istemediğiniz süreci hariç tutun
  • awk '{print $2}' - ikinci çıkış alanını göster, PID.
  • xargs kill- killher giriş argümanına (PID) komut uygular .

xargsKomuta aşina değilseniz, hemen anlamadıysanız endişelenmemenizi tavsiye ederim. İlk kez oldukça zor görünebilir. Ben kullanımı çok basit bir örnek yayınladı, daha fazla bilgi için google olabilir.


1
Harika, ama lütfen nasıl çalıştığını açıklayabilir misiniz, örneğin awk '{print $ 2}' ve xargs ne öldürür?
user370717

awk '{print $2}' - psmevcut durumda, ikinci çıktı alanını yazdırır PID. her birine komut xargsuygularkillPID
user1700494

1
Bunu bir yorumda belirtmek güzel ama iyi biçimlendirilmiş yorum cevabınıza entegre edildikten sonra cevabınızı oylamayı tercih ederim.
civcivler
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.