2011-11-09 16 views
10

Ho scritto uno script python ma ho accidentalmente inserito un ciclo while infinito nel mio script.Kill a python process

Come si elimina il processo? Ho provato ctrl+c ma senza successo.

C'è qualche altra opzione da provare?

Sono su Mac Os X 10.7.2 con Python 2.7

risposta

13

ps a per ottenere il PID del processo. kill -9 <pid> per inviare il segnale SIGKILL non bloccabile.

Nota che ho solo una scatola Linux davanti a me da testare, quindi i comandi OS X potrebbero essere leggermente diversi.

+0

ha funzionato perfettamente grazie. Per curiosità, a cosa serve la bandiera -9? – Harpal

+0

9 è il numero di SIGKILL – wim

+1

'SIGKILL' è il segnale numero 9.' kill -X' è una scorciatoia per 'kill -s SIGNAME' se non si desidera digitare il nome simbolico e si conosce il numero. Credo che se fai 'kill -l' (che è una L minuscola) elencherà i segnali e i numeri sul tuo sistema. –

17

Prova Ctrl+\ per inviare un SIGQUIT.

0

Aprire il monitor Attività, andare alla scheda Processi ed evidenziare python.exe e chiuderlo facendo clic su Esci.

9

provare questo.

pkill -9 python 

or 

ps -ef|grep python 
kill -9 <pid> 

or 

lsof -i :port 

or 
sudo kill $(sudo lsof -t -i:8000)