Drep alle prosesser som tilhører en bruker med pkill

Aktivitetsmonitor og det tradisjonelle "kill" kommandolinjeverktøyet kan håndtere de fleste prosessbehandlingsbehov, men hvis du noensinne har behov for å målrette og drepe alle prosesser som tilhører en enkelt brukerkonto, vet du at det kan være en frustrerende oppgave. Selv om Activity Monitor lar deg sortere "Andre brukerprosesser" og velge flere prosesser, tillater det ikke at du avslutter flere prosesser på samme tid. På samme måte er standard drep og killall kommandoer generelt rettet mot bestemte prosesser, og ikke på hver enkelt oppgave som tilhører en bestemt brukerkonto. Det er her kommandoen "pkill" kommer inn, noe som gjør det enkelt å umiddelbart drepe hver enkelt prosess som tilhører noen bruker via terminalen.

Hvordan drepe alle prosesser fra en bruker med pkill

Den grunnleggende syntaksen for bruk av pkill for å drepe alle brukerprosesser er som følger:

pkill -u username

Bekreft at alle prosesser som tilhører den brukeren, er blitt avsluttet ved å bruke -u-flagget på ps-kommandoen:

ps -u username

Forutsatt at alt gikk som ønsket, vil du finne en tom liste rapportert tilbake.

pkill er ikke saksfølsom, noe som betyr at brukernavnet "TestUser" skal identifiseres som "testuser".

Hvis du skal prøve dette på deg selv, vil det være best å bruke rask brukerbytte for å starte en ny pålogging med en annen brukerkonto, eller å bruke ssh-serveren og utføre den på en annen lokal Mac. Hvis du bruker pkill på ditt eget aktive brukernavn, vil alle prosesser bli avsluttet, hvorav noen oppdateres øyeblikkelig, men mange bakgrunnsprosesser starter ikke automatisk igjen. Dette fører til all slags særegne atferd, og avhengig av hva du kjører, blir ikke veldig overrasket over å finne at operativsystemet blir så ubrukelig at du enten må logge ut og på nytt, eller til og med starte om den aktive brukeren konto rettet mot pkill var enten rot eller administrativt nivå.

Pkill-kommandoen er litt av en blowtorch når den er peket på brukernavn, og kan tenkes som en måte å i det vesentlige tvinge alt som tilhører en logget bruker, men det kan også gjøre det til et meget kraftig verktøy for feilsøking og når man arbeider med defunct eller zombie prosesser som har bodd intakt til tross for at en bruker logg ut.

Vi har diskutert pkill-kommandoen før å drepe prosesser med jokertegn og spesifikke apper / prosesser som tilhører en enkelt bruker, og selv om det er et nylig tillegg til Mac siden OS X Mountain Lion, har det vært i Linux-verdenen for en stund .