2015-03-04 20 views
6

Supponendo che si tratti di un computer con Windows 7, stiamo parlando di script batch sulla riga di comando di Windows.Come si elimina un processo specifico in esecuzione in background dal prompt dei comandi?

Immagina di voler avviare e arrestare due processi diversi in esecuzione in background ed eseguire le operazioni mentre sono in esecuzione in background. Per esempio:

START /B CMD /C tomcatA.bat 
doSomeStuff 
stopTomcatACmd 
START /B CMD /C tomcatB.bat 
doSomeStuff 
stopTomcatBCmd 

Sto cercando di capire come implementare il stopTomcatBCmd. Su una macchina Linux potresti semplicemente kill il pid.

La mia domanda è: Come si elimina un processo specifico in esecuzione in background in Windows?

risposta

2

Penso che taskkill sia quello che stai cercando. Con esso puoi uccidere un processo in esecuzione tramite il suo ID o nome dell'immagine (nome del file .exe).

Si può leggere una spiegazione dettagliata utilizzo in questa pagina: http://www.computerhope.com/taskkill.htm

0

TaskKill dovrebbe fare il lavoro. è possibile scrivere nel nome esatto del compito di uccidere, cioè di uccidere tutti firefox elabora

C:\>Taskkill /IM firefox.exe /F 

oppure è possibile controllare il PID del compito specifico scrivendo Tasklist, e poi uccidere il compito menzionando il suo PID cioè

C:\>Taskkill /PID 26356 /F 
+0

C'è un modo per ogni script di farlo? – hawkeye

+0

Di quale script stai parlando? –

+0

Si prega di vedere la domanda, ci sono due diversi processi e due diversi script. Ogni script deve uccidere il proprio processo solo se ha lo stesso nome dell'app. – hawkeye