GNU/Linux >> Tutoriels Linux >  >> Linux

Trouver (et tuer) les anciens processus

Solution 1 :

Vous pouvez le faire avec une combinaison de ps , awk et kill :

ps -eo pid,etime,comm

Vous donne une sortie à trois colonnes, avec le PID du processus, le temps écoulé depuis le démarrage du processus et le nom de la commande, sans arguments. Le temps écoulé ressemble à l'un de ces éléments :

mm:ss
hh:mm:ss
d-hh:mm:ss

Étant donné que vous souhaitez des processus exécutés depuis plus d'une semaine, vous recherchez des lignes correspondant à ce troisième modèle. Vous pouvez utiliser awk pour filtrer les processus par durée d'exécution et par nom de commande, comme ceci :

ps -eo pid,etime,comm | awk '$2~/^7-/ && $3~/mycommand/ { print $1 }'

qui imprimera les pid de toutes les commandes correspondant à 'mycommand' qui ont été exécutées pendant plus de 7 jours. Dirigez cette liste vers kill, et vous avez terminé :

ps -eo pid,etime,comm | awk '$2~/^7-/ && $3~/mycommand/ { print $1 }' | kill -9

Solution 2 :

killall --quiet --older-than 1w process_name


Linux
  1. Comment trouver et tuer le processus Zombie sous Linux

  2. Trouver les 10 principaux processus en cours d'exécution par utilisation de la mémoire et du processeur

  3. Comment puis-je trouver et tuer un processus dans Ubuntu

  4. Linux :trouver et tuer les processus zombies

  5. Meilleur moyen de tuer les processus d'état Zombie et D sous Linux

Comment trouver et tuer les processus zombies dans CentOS 8

Comment trouver les 10 principaux processus en cours d'exécution par utilisation de la mémoire et du processeur

Comment trouver l'ID de processus d'un programme et le tuer [Astuce rapide]

Comment trouver les principaux processus en cours d'exécution par utilisation de la mémoire et du processeur sous Linux

Maîtriser le processus Linux Kill à l'aide de ps, pgrep, pkill et plus

Comment tuer les processus sous Linux en utilisant kill, killall et pkill