103 votes

Tuer un processus en bash

Comment tuer un processus qui s'exécute en bash - par exemple, supposons que j'ouvre un fichier :

$ gedit file.txt

y a-t-il un moyen dans l'invite de commande de le fermer ? Cet exemple est assez trivial, puisque je pourrais simplement fermer la fenêtre, mais il semble se poser un peu, notamment lorsque je tape des commandes de manière incorrecte.

Existe-t-il également un moyen d'échapper à un exécutable en cours d'exécution ? Cela a probablement la même solution, mais je préférais poser la question quand même.

Merci

1voto

piero-la-lune Points 473

Vous pouvez utiliser la commande pkill pour tuer des processus. Si vous voulez "jouer", vous pouvez utiliser "pgrep", qui fonctionne exactement de la même manière mais renvoie le processus plutôt que de le tuer.

pkill a le paramètre -f qui vous permet de faire correspondre l'ensemble de la commande. Ainsi, pour votre exemple, vous pouvez : pkill -f "gedit file.txt"

0voto

GreenMatt Points 6301

Il n'est pas clair pour moi ce que vous voulez dire par "échapper à un exécutable en cours d'exécution", mais ctrl-z mettra un processus en arrière-plan et rendra le contrôle à la ligne de commande. Vous pouvez ensuite utiliser la commande fg pour ramener le programme au premier plan.

0voto

ganesh Points 61

Veuillez vérifier la commande "top" puis si votre script ou tout autre processus s'exécute, veuillez noter le 'PID'

PID UTILISATEUR PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMANDE
 1384 root 20 0 514m 32m 2188 S 0.3 5.4 55:09.88 example
14490 root 20 0 15140 1216 920 R 0.3 0.2 0:00.02 example2

tuer 

Exemple : tuer 1384

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X