In un articolo precedente avevamo spiegato come chiudere forzatamente i processi attivi dalla riga di comando con taskkill, adesso vediamo come farlo da PowerShell con Stop-Process
.
Per vedere la lista dei processi attivi, e sapere il ProcessName che ci interessa, dobbiamo usare il comando get-process
.
Per terminare il processo dobbiamo usare il comando stop-process -name NomeProcesso
. Utilizzando il nome del processo vengono chiuse tutte le sessioni attive con quel nome.
Se indichiamo un nome sbagliato, calc invece di calculatorapp, oppure non attivo in quel momento, otterremo un messaggio d’errore.
Gli apici, o le virgolette, per contenere il nome del processo servono solo se ci fosse uno spazio nel nome come nell’ultimo comando dell’immagine, altrimenti ne potete fare anche a meno.
Possiamo chiudere un processo tramite il suo Id, va bene quando si ha una singola istanza attiva del programma, va molto meno bene quando si trova un browser multi processo.
Sapere quale sia l’Id della singola scheda bloccata del browser diventa impossibile, inoltre l’Id è un numero sempre variabile, legato al processo attivo in quel momento, il che lo rende inutilizzabile per la creazione di script di comando.
E’ possibile anche terminare più processi contemporaneamente, basta separare i nomi con una virgola.
Sino ad ora abbiamo chiuso i processi subito, se si vuole fermare l’azione, e dare una ulteriore conferma prima di chiudere il programma basta aggiungere l’opzione -confirm
Se siete su un computer utilizzato da più persone, e queste non si sono scollegate correttamente lasciando dei processi attivi che vi causano problemi, potete provare a terminarli sempre indicando il nome del processo. Se aggiungete l’opzione -force
non vi chiederà nessuna conferma.
Se ancora non vi basta quello che abbiamo visto nell’articolo, potete consultare la pagina Microsoft di riferimento per questo comando.