Comment tuer deux ou plusieurs process avec une command kill?

J'utilise la command suivante pour tuer un process java via le script shell:

pidof java | xargs kill -9 $ 1

Et si la list des sorties de pidof contient plus d'un élément? Comment les tuer à la fois avec la même command?

Tout d'abord, consultez pkill . Vous pouvez tuer n'importe quel nombre de process donné leur nom:

 pkill java 

Vous pouvez même utiliser la command complète avec des arguments dans le cadre de la search

 pkill -f some_ssortingng_in_arguemnts 

Deuxièmement, votre construction avec xargs fonctionnera très bien pour plusieurs PID aussi longtime qu'ils sont apathés comme des espaces ou des numéros séparés par une nouvelle ligne.

La command killall est disponible sur la plupart des Linuces à tout prix. Vous devrez peut-être l'installer sur certaines dissortingbutions. Il vous permet de tuer tous les process qui correspondent au nom fourni sur la command line.

pgrep peut vous donner la list des PID

Par exemple:

 pgrep java 

vous donnera la list des PID liés à Java. Donc, vous pouvez utiliser:

 kill -9 `pgrep java` 

je préfère

 kill -9 `pidof java` 

en raison de la sortie en ligne

 > pgrep gulp 6316 6565 > pidof gulp 6565 6316 

Le problème avec pkill , bien vous ne l'avez pas installé par défaut sur certains systèmes (comme Ubuntu)