Ich möchte einen Prozess beenden, nachdem ich die ID in einem einzigen Schritt gefunden habe.
Ich verwende derzeit diese beiden Befehle:
pidof <name>
kill <#number_which_is_result_of_command>
Wie kann ich einen einzelnen Befehl schreiben, um dies zu tun?
Antwort1
Sie können Prozesse auch anhand ihres Namens beenden:
Beispiel:
pkill vim # kill all processes containing vim in the process name
Antwort2
Um Ihre spezifische Frage mit Ihrem Befehlssatz zu beantworten, verwenden Sie:
kill `pidof <name>`
Da pidof <name>
es Ihnen die PID des Prozesses gibt, den Sie beenden möchten, können Sie es auch mit Befehlszeilenschaltern wie -9
usw. verwenden.
Getestet mit bash
und tcsh
.
Antwort3
Sollte ein Kommentar zu Levons Seite sein, aber mir fehlt hier der Ruf, dies zu tun:
Ausführliche Darstellung der Diskussion in der akzeptierten Antwort auf diese Frage:https://serverfault.com/questions/397762/how-to-make-folders-00-99-with-a-single-command-in-ubuntu
Ich würde sagen, es könnte vorzuziehen sein (oder zumindest nützlich/klarer für spätere Sucher),
kill $(pidof <name>)
Weitere Hinweise zu $() vs. ``:http://mywiki.wooledge.org/BashFAQ/082
Antwort4
Sie können auch killall
einen Befehl verwenden, um den jeweiligen Prozess zu beenden.
killall vim