Erledigen Sie einen Java-Prozess (in Linux) nach Prozessnamen anstelle von PID

10

Beim Konfigurieren / Installieren von Hadoop-Clustern müssen wir häufig einen Java-Prozess / -Daemon beenden. Wir sehen Java Prozesse / Daemons mit jps Befehl laufen. Normalerweise beenden wir einen Java-Prozess mit seiner PID. ZB

%Vor%

Es ist ein bisschen schwierig, die PID einzugeben. Gibt es eine Möglichkeit, den Prozess durch seinen Namen zu töten? In einem einzigen Befehl?

    
I Bajwa 17.07.2014, 01:04
quelle

3 Antworten

22

Hier ist der Befehl zum Beenden des Java-Prozesses durch Prozessname anstelle seiner Prozess-ID.

%Vor%

Lassen Sie mich mehr über den Nutzen dieses Befehls erklären. Angenommen, Sie arbeiten mit dem Hadoop-Cluster. Es ist oft erforderlich, dass Sie Java-Daemons überprüfen, die mit dem jps -Befehl ausgeführt werden. Nehmen wir an, wenn Sie diesen Befehl auf Worker-Knoten geben, sehen Sie folgende Ausgabe.

%Vor%

Wenn wir den DataNode-Prozess beenden möchten, verwenden wir normalerweise den folgenden Befehl

%Vor%

Es ist jedoch etwas schwierig, PID einzugeben, um den Befehl kill zu verwenden. Durch Verwendung des in dieser Antwort angegebenen Befehls ist es einfach, den Namen des Prozesses zu schreiben. Wir können auch Shell-Skripte vorbereiten, um häufig verwendete Deamons im Hadoop-Cluster zu töten, oder wir können ein Shell-Skript vorbereiten und können Parameter als Prozessnamen verwenden.

    
I Bajwa 17.07.2014, 01:04
quelle
0

Wie wäre es mit

? %Vor%     
ceremcem 17.07.2014 01:08
quelle
-1

Um die Prozess-ID dieses Java-Prozesses zu erhalten,

netstat-tuplen

Prozess-ID (PID) des Prozesses, den Sie löschen und ausführen möchten

kill -9 PID

    
Pravin Netke 17.10.2016 12:53
quelle

Tags und Links