Comment tuer le process en utilisant le nom du programme au lieu de PID?

J'ai commencé mon programme Python en arrière-plan en utilisant nohup comme mentionné ci-dessous –

 nohup zook.py & 

Maintenant, j'essaie de tuer ce process, alors j'ai fait la command ps comme mentionné ci-dessous

 root@phxdbx1145:/home/david/zook# ps ax | grep zook.py 16352 pts/6 S+ 0:00 grep --color=auto zook.py 

Mais d'une façon ou d'une autre, chaque fois que son PID change, je ne sais pas pourquoi. Chaque fois que je fais comme ça –

 kill -9 16352 

Il dit toujours, No Such Process .

Et quand je fais encore un petit ordre, je vois que le PID a changé automatiquement.

Je ne sais donc pas comment je tue ce process?

Est-ce que je peux tuer le process avec le nom de quelque façon que ce soit?

J'ai essayé avec

killall zook.py

mais ça ne marche pas pour moi et je l'ai compris –

 zook.py: no process found 

Une autre option? D'une façon ou d'une autre, chaque PID se change. Donc je ne peux pas utiliser kill -9 pid

METTRE À JOUR:-

C'est ce que je reçois. J'ai fait pkill -9 zook.py et puis j'ai fait la command ps comme mentionné ci-dessous et ça fait constamment zook.py?

 root@dbx1145:/home/david/zook# pkill -9 zook.py root@dbx1145:/home/david/zook# ps ax | grep zook.py 23870 pts/6 S+ 0:00 grep --color=auto zook.py root@dbx1145:/home/david/zook# ps ax | grep zook.py 23872 pts/6 S+ 0:00 grep --color=auto zook.py root@dbx1145:/home/david/zook# ps ax | grep zook.py 23874 pts/6 S+ 0:00 grep --color=auto zook.py root@dbx1145:/home/david/zook# ps ax | grep zook.py 23876 pts/6 S+ 0:00 grep --color=auto zook.py 

2 Solutions collect form web for “Comment tuer le process en utilisant le nom du programme au lieu de PID?”

Si vous regardez ce qui se trouve à droite de ce PID, vous pouvez remarquer que c'est le PID de grep qui search votre string de search. C'est pourquoi il est différent à chaque fois. Au moment où vous avez votre coquille de grep, bien sûr, grep est parti.

Vous findez votre process sous un nom différent, s'il est toujours en cours d'exécution. Essayez ps ax | grep python ps ax | grep python place, ou mieux encore, pgrep python si vous l'avez.

Pour faire le grep pour le process, vous pouvez utiliser

 ps ax|grep name|grep -v grep 

Cela éliminera les commands grep, mais si votre nom de script ne s'affiche pas, vous devez probablement faire ps axw pour get une command line plus longue.

 ps axww|grep name|grep -v grep 
  • Unix exécute les commands à plusieurs resockets sur la shell sans utiliser crontab
  • Combien de bits dans mon Ubuntu?
  • Remplacer MAILTO pour une seule input crontab
  • Exclure avec la command find
  • Openwrt: Utilisez rdate avec les serveurs NTP?
  • Écran GNU: une window par écran ou un écran avec plusieurs windows?
  • vsftpd permissions par défaut pour le directory du site et ftp
  • Environnement de mise à jour AIX après .profile change
  • Quel est le but de kslowd?
  • Solaris 9: miroir dégradé impossible à gérer avec raidctl après le rlocation du lecteur
  • Comment générer automatiquement un file à partir d'un script avec la date actuelle en tant que nom de file?
  • Les astuces du serveur de linux et windows, tels que ubuntu, centos, apache, nginx, debian et des sujets de rĂ©seau.