2 Stimmen

Wie man viele Instanzen eines Prozesses auf einmal beendet?

Ich habe mehrere Instanzen eines Prozesses (d.h. mit einer gemeinsamen Befehlszeile). Ich möchte sie alle auf einmal beenden. Wie kann ich das erreichen?

4voto

Marcelo Cantos Punkte 173498

Optionen:

  1. killall
  2. ps|awk|xargs kill
  3. Tag-und-Tötung in htop

Killall ist super leistungsstark, aber ich finde es gefährlich, es unkontrolliert zu verwenden. Option 2 ist umständlich zu verwenden, aber oft befinde ich mich in Umgebungen, in denen killall nicht verfügbar ist; außerdem ermöglicht es mir, den xargs-Befehl beim ersten Durchlauf auszulassen, um die verurteilten Prozesse erneut zu überprüfen, bevor ich das Messer schwingen lasse. Letztendlich bevorzuge ich meistens htop, da es mir ermöglicht, vor dem großen "k" eine Auswahl zu treffen.

1voto

Oldskool Punkte 33485

Du suchst wahrscheinlich nach dem killall Befehl. Zum Beispiel:

killall perl

Würde alle laufenden perl Prozesse auf deinem Rechner beenden. Siehe http://linux.die.net/man/1/killall für mehr Details.

0voto

paxdiablo Punkte 809679

killall wird das für Sie tun. Verwenden Sie man killall für die Optionen, aber normalerweise mache ich folgendes:

killall myProgName

Seien Sie einfach sehr vorsichtig (z. B. verwenden Sie zuerst ps, um sicherzustellen, dass es nur das tötet, was Sie möchten).

0voto

ravenpi Punkte 11

HINWEIS: killall ist die Antwort... WENN Sie auf Linux sind. SysV hat auch ein killall-Befehl, aber es macht etwas ganz anderes: Es ist Teil des Prozesses zum Herunterfahren von Prozessen vor dem Systemhalt. Also, ja, killall ist am einfachsten, aber wenn Sie oft zwischen Linux- und SysV-Systemen pendeln, könnte ich empfehlen, stattdessen ein schnelles Skript zu schreiben, das das gewünschte tut.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X