Wie beendet man auf Centos 7 alle Prozesse, die dem „Benutzer“ gehören?

Wie beendet man auf Centos 7 alle Prozesse, die dem „Benutzer“ gehören?

Ich habe in einer Online-Karteikarte gelesen, dass der Befehl lautet:

pkill -u bob $(pgrep -u bob)

Ich glaube jedoch, dass das falsch ist. Ich glaube, es besagt:

Töte alle verarbeiteten im Besitz von bob, und4572\n4600

Weil:

[bob@localhost ~]$ pgrep -u bob
4572
4600

Außerdem wird ein Fehler ausgegeben:

[bob@localhost ~]$ pkill -u bob $(pgrep -u bob)
pkill: only one pattern can be provided
Try `pkill --help' for more information.

Das ist sinnvoll, da Benutzernamen keine Zeilenumbrüche enthalten dürfen, oder?

Ich denke, der Befehl sollte nur lauten:

pkill -u bob

Um „alle Prozesse zu beenden, die Bob gehören“

Während der Befehl:

pgreg -u bob 

Gibt „alle Prozesse im Besitz von Bob“ zurück.

Ich frage mich:

  • Verwende ich die richtigen Befehle wie vorgesehen?
  • Ist meine Analyse des falschen Weges zutreffend?

Antwort1

Du hast Recht

Falsch: pkill -u bob $(pgrep -u bob)

Richtig:pkill -u bob


Die Karteikarte sollte wahrscheinlich Folgendes zeigen:

kill $(pgrep -u bob)

wodurch alle von zurückgegebenen Prozesse beendet würden pgrep -u bob.

verwandte Informationen