C'est probablement une question fréquemment posée, mais je n'ai pas pu trouver une bonne documentation.
J'ai des tâches en cours d'exécution sur mon système:
foo@fooBox:~/tmp$ jobs
[1]+ Stopped foo bar baz
Comment puis-je tuer ce processus? J'ai essayé différentes commandes kill 1
, mais cela n'a pas fonctionné.
SIGINT
, commevim
.Réponses:
Vous pouvez utiliser la méthode suggérée par @fideli, ou vous pouvez utiliser la
kill
commande comme ceci:Cela tuera la première commande suspendue. Vous pouvez également trouver une liste de commandes suspendues comme ceci:
et il fournira une sortie comme celle-ci:
Si vous avez plusieurs travaux arrêtés, le nombre entre parenthèses (
[1]
) sera le numéro du travail, celui que vous fournissez après la%
dans lakill
commande.la source
kill
.-bash: kill: (3593) - Operation not permitted
. Quand je l'utilise avec sudo, j'obtiens cecikill: %1: invalid process id
sudo
, vous ne pouvez donc pas la tuer, mais exécuterkill
avecsudo
signifie que vous n'avez plus accès à la liste des tâches de votre utilisateur (essayez courirsudo jobs
pour voir ce que je veux dire). Au lieu de cela, puisque vous avez maintenant le PID, exécutez simplementsudo kill 3593
.Si vous exécutez,
ps ax
vous obtiendrez une liste de tous les processus en cours d'exécution. Recherchez celui que vous voulez tuer et notez le numéro dans laPID
colonne. Par exemple, si le nombre était10203
, vous exécuteriez alors:Vous pouvez également exécuter
ps ax | grep foo
pour trouver le programme exact que vous recherchez. Enfin, vous pouvez exécuter:pour tuer toutes les instances de
foo
.la source