Elimina tutti i processi di un utente con pkill

Activity Monitor e il tradizionale strumento "kill" della riga di comando sono in grado di gestire la maggior parte delle esigenze di terminazione del processo, ma se hai mai avuto bisogno di indirizzare e uccidere tutti i processi appartenenti a un singolo account utente, sai che può essere un compito frustrante. Sebbene Activity Monitor ti consente di ordinare "Altri processi utente" e selezionare più processi, non ti consente di terminare più processi contemporaneamente. Allo stesso modo, i comandi standard kill e killall sono generalmente finalizzati a processi specifici e non a ogni singola attività appartenente a un account utente specifico. Qui è dove arriva il comando 'pkill', che rende semplice uccidere istantaneamente ogni singolo processo appartenente a qualsiasi utente tramite il terminale.

Come uccidere tutti i processi da un utente con pkill

La sintassi di base per l'utilizzo di pkill per uccidere tutti i processi di un utente è la seguente:

pkill -u username

Verificare che tutti i processi appartenenti a quell'utente siano stati terminati usando l'opzione -u sul comando ps:

ps -u username

Supponendo che tutto sia andato come previsto, troverai una lista vuota riportata indietro.

pkill non è sensibile al maiuscolo / minuscolo, il che significa che un nome utente di "TestUser" verrà identificato come "testuser".

Se hai intenzione di provare questo su te stesso, sarebbe meglio utilizzare il passaggio rapido dell'utente per avviare un nuovo accesso con un altro account utente, o per utilizzare il server ssh ed eseguirlo su un altro Mac locale. L'utilizzo di pkill sul proprio nome utente attivo causerà l'interruzione di tutti i processi, alcuni dei quali si aggiorneranno all'istante, ma molti processi in background non verranno riavviati automaticamente. Questo porta a ogni sorta di comportamento particolare e, a seconda di ciò che si sta eseguendo, non è terribilmente sorpreso di scoprire che il sistema operativo diventerà così inutilizzabile da dover effettuare il logout e il riavvio, o addirittura il riavvio se l'utente attivo l'account preso di mira da pkill era di livello root o amministrativo.

Il comando pkill è un po 'una fiamma ossidrica quando viene indirizzato ai nomi utente e può essere pensato come un modo per chiudere forzatamente tutto ciò che appartiene a un utente che ha effettuato l'accesso, ma può anche essere uno strumento molto potente per la risoluzione dei problemi e quando si ha a che fare con la defunta o processi di zombi rimasti intatti nonostante un utente che si disconnetteva.

Abbiamo discusso il comando pkill prima di uccidere i processi con caratteri jolly e app / processi specifici appartenenti a un singolo utente, e sebbene sia un'aggiunta recente al Mac da OS X Mountain Lion, è stato nel mondo Linux per un bel po 'di tempo .