hi12456
Goto Top

Kill-Befehl für mehrere Prozesse gleichzeitig

Hallo!

ich lasse mir mit dem Befehl ps -ef | grep Verzeichnisname anzeigen, welche Prozesse aus einem bestimmten Verzeichnis noch aktiv sind. Dort dürften nur ca. 4 Einträge stehen, aber im Moment sind es ca. 150, weil ein Prozess wohl nicht richtig gestoppt werden konnte. Es ist immer das gleiche Programm, aber mit unterschiedlichen Prozess-IDs.

Die Prozesse können mit kill Prozessnummer gelöscht werden - nur - muss ich jetzt 150 Prozessnr. eingeben, oder gibt es einen Befehl, mit dem alle Prozesse mit dem gleichen Namen beendet werden?

Viele Grüße.

Content-Key: 137793

Url: https://administrator.de/contentid/137793

Printed on: April 25, 2024 at 11:04 o'clock

Member: it-frosch
it-frosch Mar 09, 2010 at 14:04:05 (UTC)
Goto Top
Hallo hi12456,

killall prozessname z.B. alle midnightcommander killall mc.
Member: hi12456
hi12456 Mar 09, 2010 at 14:08:20 (UTC)
Goto Top
Danke!

Ich habe gelesen, dass der Befehl killall speziell unter Solaris das Betriebssystem herunterfährt, deswegen habe ich ihn nicht getestet. Bist Du sicher?

Viele Grüße,

HI.
Mitglied: 45877
45877 Mar 09, 2010 at 14:18:13 (UTC)
Goto Top
Einige Unix-Derivate, unter anderem Solaris, rufen das Unix-Kommando killall automatisch auf, wenn das System runterfährt. Es verhält sich wie kill, nur wird ein Signal nicht nur zu einem einzigen Prozess geschickt, sondern zu allen Prozessen auf dem System.

http://de.wikipedia.org/wiki/Kill_%28Unix%29
Mitglied: 52569
52569 Mar 09, 2010 at 14:21:23 (UTC)
Goto Top
Hallo,

ps -ef | grep Verzeichnisname | awk '{ print $2 }' | xargs $1 kill -9 $1

awk schneidet die 2. Spalte des ps-Kommando aus
xargs liest die Standard-Eingabe, erstellt daraus eine durch Leerzeichen getrennte Dateiliste und führt damit einen Befehl aus
kill beendet dann die Prozesse über diese PID

Zum testen vorher nur mit
ps -ef | grep Verzeichnisname | awk '{ print $2 }'

probieren und erst dann mit dem kill-Befehl.

Mark
Member: hi12456
hi12456 Mar 09, 2010 at 14:25:23 (UTC)
Goto Top
Danke!

In dem Wikipedia- Artikel habe ich es gelesen.

Bedeutet dies jetzt nur, dass Solaris zwecks Herunterfahren killall aufruft, oder
bedeutet dies, dass wenn ich jetzt killall pfad_zum_skript oder killall prozessname
aufrufe, plötzlich Solaris heruntergefahren wird? Denn herunterfahren möchte ich im Moment nicht.
Member: hi12456
hi12456 Mar 09, 2010 at 14:41:58 (UTC)
Goto Top
Danke, Mark, der Hinweis ist der richtige.
Member: mrtux
mrtux Mar 09, 2010 at 14:47:48 (UTC)
Goto Top
Hi !

man killall

fährt das System jedenfalls nicht herunter! face-wink

mrtux
Mitglied: 45877
45877 Mar 09, 2010 at 14:47:56 (UTC)
Goto Top
Hallo,
das bedeutet, dass beim herunterfahren killall vom System aufgerufen wird.
Das System fährt NICHT automatisc herunter wenn du killall aufrufst.
Ansonsten einfach mal killall --help aufrufen.