![]() |
|
|
google unix.com
|
|||||||
| Forum | Registrati | Regole Forum | Collegamenti | Album | FAQ | Members List | Calendario | Ricerca | Today's Posts | Mark Forums Read |
| UNIX e avanzata per utenti esperti Expert-to-Expert. Ulteriori avanzata UNIX, comandi UNIX, Linux, Sistemi Operativi, System Administration, Programmazione, Shell, Shell Script, Solaris, Linux, HP-UX, AIX, OS X, BSD. |
Più di UNIX e Linux Forum Argomenti potreste trovare utili
|
||||
| Filo | Thread Starter | Forum | Risposte | Ultimo Post |
| Diff b / n uccidere e uccidere -9 | ammu | UNIX e avanzata per utenti esperti | 2 | 07-18-2007 06:29 PM |
| uccidere (0, -9) non uccidere il processo | umen | Di programmazione ad alto livello | 9 | 06-19-2007 07:09 AM |
| non è in grado di uccidere trovare con kill -9 | Amardeep | UNIX for Dummies Domande & Risposte | 5 | 01-04-2007 05:49 PM |
| KILL PID, intern dovrebbe uccidere un altro PID. | rkrgarlapati | Shell scripting e di programmazione | 4 | 10-17-2006 08:47 AM |
| Quando uccidere doesnt lavoro, il modo per uccidere un processo? | VijayHegde | UNIX e avanzata per utenti esperti | 3 | 05-12-2006 05:24 PM |
![]() |
|
|
LinkBack | Thread Tools | Cerca in questo Thread |
Rating:
|
Modalità di visualizzazione |
|
|
|
||||
|
KILL senza PID
Hellow esperti
Ho un problema. eseguire uno script in backgroun. e vorrei che lo script di uccidere solo con il nome di script ..... Qual è quindi la soluzione .. per le informazioni il mio nome è scritto "testscript" n contiene "sleep 100" grazie .... |
|
||||
|
Se il sistema è pidof, Che l'uso. In caso contrario, la soluzione di uso comune è quello di eseguire grep su un ps lista dei processi, e l'uso che per trovare il PID per passare a uccidere. Tuttavia, un ingenuo tentativo avrà il problema che si troverà nel processo di quotazione, e commettere suicidio, invece di uccidere il bersaglio. La soluzione corretta è che per usare un espressione regolare, che non corrispondono direttamente come la stringa di ricerca. Sfortunatamente, il formato di output e le opzioni di ps varia da un sistema all'altro. Le seguenti opere per me in una recente versione di Ubuntu. Codice:
ps t | awk '$5 ~ /^[t]estscript/ { print $1 }' | xargs -r kill
L'uso di [t] invece di una pianura t è la soluzione per il "script di uccidere se stesso" problema. L'uso di xargs-r impedisce uccidere da eseguire in ogni caso non ci sono le partite (non vi sarebbe solo un messaggio di avvertimento su come eseguire uccidere senza argomenti, in modo che non è un problema molto fatale). L'opzione t e il campo numero di $ 1 e $ 5 potrebbe aver bisogno di essere cambiate per il vostro sistema. Se Google per una soluzione analoga per la vostra particolare piattaforma, guardare fuori per i problemi sopra esposti. Per ragioni stilistiche, un unico awk script dovrebbe essere preferito su ciò che è chiamato affettuosamente Inutile Usa di Grep. Ultimo a cura di epoca; al 08/02/2008 04:44 AM.. |
|
|||||
|
Se si sta usando Linux, è possibile utilizzare il killall comando per uccidere un processo utilizzando il nome del processo (s) (non il PID).
Si veda, ad esempio: killall (1): uccidere i processi per nome - Linux man page Se tutti, pkill: http://linux.die.net/man/1/pkill |
|
||||
|
Qualcosa di semplice:
killall procName Un altro modo: all'interno del vostro script, creare un file temporaneo che contiene il pid attuale del vostro script. Quando si desidera terminare il processo, l'uso che in quanto tale: kill -9 `cat PIDFILE» Se volete qualcosa di molto specifico e preciso: - Setuid () ad un altro utente, che gira solo tale processo (script) - Pkill -9-u youruser È inoltre possibile utilizzare pkill per uccidere tutti i processi che utilizzano un certo terminale pkill -9-t pts / 1 |
![]() |
| Segnalibri |
| Tag |
| trovare processo id, uccidere |
| Thread Tools | Cerca in questo Thread |
| Modalità di visualizzazione | Vota questo thread |
|
|