Je cours la command ps -A | grep <application_name>
ps -A | grep <application_name>
et get la list des process comme ceci:
19440 ? 00:00:11 <application_name> 21630 ? 00:00:00 <application_name> 22694 ? 00:00:00 <application_name>
Je veux tuer tous les process de la list: 19440
, 21630
, 22694
.
J'ai essayé ps -A | grep <application_name> | xargs kill -9 $1
ps -A | grep <application_name> | xargs kill -9 $1
ps -A | grep <application_name> | xargs kill -9 $1
mais cela fonctionne avec des erreurs.
kill: illegal pid ? kill: illegal pid 00:00:00 kill: illegal pid <application_name>
Comment puis-je le faire avec grâce?
pkill -f <application_na>
Tue tous les process qui contiennent le model <application_na>
dans leurs noms.
homme pkill
Le problème est que ps -A | grep <application_name> | xargs -n1
ps -A | grep <application_name> | xargs -n1
ps -A | grep <application_name> | xargs -n1
renvoie la sortie comme ceci
19440 ? 00:00:11 <application_name> 21630 ? 00:00:00 <application_name> 22694 ? 00:00:00 <application_name>
Vous pouvez utiliser awk
pour get d'abord une colonne de sortie ps
.
ps -A | grep <application_name> | awk '{print $1}' | xargs -n1
Renvoie la list des PID
19440 21630 22694
Et en ajoutant kill -9 $1
vous avez une command qui tue tous les PID
ps -A | grep <application_name> | awk '{print $1}' | xargs kill -9 $1
killall
peut le faire.
$ killall application_name