Mehrere Prozesse eines Programms mit xargs beenden
Mehrere Prozesse eines Programms mit xargs beenden
Wollte eben mehrere Dateien in xine öffnen, doch leider wurde für jede Datei xine geöffnet, so dass ich eine Menge an xine-Prozessen hatte.
Nun wollte ich die Prozesse alle mit xargs und kill -9 beenden, doch leider funktioniert dies nicht.
Kann mir noch mal kurz jemand sagen, wie ich mit ps -ef, xargs und kill -9 alle xine Prozesse beenden kann?
Nun wollte ich die Prozesse alle mit xargs und kill -9 beenden, doch leider funktioniert dies nicht.
Kann mir noch mal kurz jemand sagen, wie ich mit ps -ef, xargs und kill -9 alle xine Prozesse beenden kann?
Oh, yeah!
geht auch mit xargs:Duff hat geschrieben:Aber man kann das ganze doch auch irgendwie mit xargs machen, oder?
Code: Alles auswählen
ps aux | awk '/xine/ && !/awk/{print $2}' | xargs kill
gms
Ja genau, so war das.
Danke!
Aber dasbraucht man doch eigentlich nicht, oder?
Danke!
Aber das
Code: Alles auswählen
&& !/awk/
Oh, yeah!
manchmal "schmugelt" sich der awk Befehl auch selber in die von Ihm erzeugte Ergebnisliste (weil in diesem Befehl ja auch das Suchkriterium "xine" vor). Der awk Prozeß terminiert aber vor dem Aufruf von xargs. Daher kann es ohne diesem Suchkriterium zu einer unschönen Fehlermeldung kommen. Wenn du damit leben kannst, ist das weglassen dieser Abfrage auch nicht weiter schlimm.Duff hat geschrieben:Aber dasbraucht man doch eigentlich nicht, oder?Code: Alles auswählen
&& !/awk/
Gruß
gms
Wenn man bei kill die option "x" verwendet ist das Nötig.
Übrigens einfacher wäre:
Übrigens einfacher wäre:
Code: Alles auswählen
ps -C xine -o %p --no-heading | xargs kill
es kommt nur zu einer Fehlermeldung, die anderen Prozesse werden korrekt gekillt
Übrigens wenn du dich nicht auf xargs versteifen würdes, die einfachste Lösung wäre
Du benötigst dafür das procps Paket.
Gruß
gms
Übrigens wenn du dich nicht auf xargs versteifen würdes, die einfachste Lösung wäre
Code: Alles auswählen
pkill xine
Gruß
gms
Den Befehl kannte ich noch gar nicht und ist wohl sicherlich die schnellste Möglichkeit verschiedene Prozesse eines Programm zu killen.
Ich wollte das ganze nur gerne mit xargs machen, da ich auf der Arbeit nicht nur unter linux arbeite, sondern auch unter unix, und da gibt es leider nicht immer alle tools die es auch unter linux gibt.
Code: Alles auswählen
pkill
Ich wollte das ganze nur gerne mit xargs machen, da ich auf der Arbeit nicht nur unter linux arbeite, sondern auch unter unix, und da gibt es leider nicht immer alle tools die es auch unter linux gibt.
Oh, yeah!