47 votes

Comment tuer un script en cours d'exécution dans le terminal, sans fermer le terminal (Ctrl + C ne fonctionne pas) ?

J'ai écrit un script bash script qui appelle plusieurs autres programmes et exécute un certain nombre de commandes. Je lance ce script depuis le terminal. Je veux maintenant tuer le script.

Appuyer sur Ctrl + C ne suffit pas toujours, je pense que c'est parce que parfois le script exécute un autre programme, et pour une raison ou une autre le signal kill ne fonctionne pas.

Cependant, si je ferme la fenêtre du terminal, cela tue le script.

Y a-t-il quelque chose que je puisse faire (une combinaison de clavier), qui soit analogue à la fermeture de la fenêtre du terminal, sans fermer réellement la fenêtre du terminal (je ne veux pas perdre l'historique des commandes, le répertoire courant, l'historique des sorties, etc.)

6voto

Harris Points 2548

Si vous connaissez les processus associés au script, vous pouvez trouver leur PID en utilisant

 ps -A

puis utiliser le numéro PID pour tuer les processus correspondants à l'aide de

 kill -9 PID_Number

1voto

user315115 Points 21

Comme l'a dit Harris, vous pouvez courir Kill -9 PID_Number mais vous pouvez également installer le paquet connu sous le nom de htop pour disposer d'un navigateur de processus interactif qui facilite grandement la recherche de processus spécifiques. htop permet également de tuer des processus.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X