Dood alle processen die bij een gebruiker horen met pkill
Inhoudsopgave:
Activity Monitor en het traditionele 'kill'-opdrachtregelprogramma kunnen de meeste procesbeëindigingsbehoeften aan, maar als u ooit alle processen die bij een enkele gebruikersaccount horen moet moeten targeten en doden, weet u het kan een frustrerende taak zijn. Hoewel u met Activity Monitor "Andere gebruikersprocessen" kunt sorteren en meerdere processen kunt selecteren, kunt u niet meerdere processen tegelijkertijd beëindigen.Evenzo zijn de standaard kill- en killall-commando's over het algemeen gericht op specifieke processen, en niet op elke afzonderlijke taak die bij een specifiek gebruikersaccount hoort. Hier komt het 'pkill'-commando om de hoek kijken, wat het eenvoudig maakt om elk afzonderlijk proces van een gebruiker via de terminal onmiddellijk te beëindigen.
Alle processen van een gebruiker beëindigen met pkill
De basissyntaxis voor het gebruik van pkill om alle processen van een gebruiker te beëindigen is als volgt:
pkill -u gebruikersnaam
Controleer of alle processen van die gebruiker zijn beëindigd door de vlag -u te gebruiken bij het ps-commando:
ps -u gebruikersnaam
Ervan uitgaande dat alles naar wens is verlopen, vindt u een blanco lijst die wordt gerapporteerd.
pkill is niet hoofdlettergevoelig, wat betekent dat een gebruikersnaam van "TestUser" hetzelfde zal worden geïdentificeerd als "testuser".
Als je dit op jezelf gaat uitproberen, kun je het beste snelle gebruikerswisseling gebruiken om een nieuwe login met een ander gebruikersaccount te starten, of om de ssh-server te gebruiken en het op een ander uit te voeren lokale Mac. Als u pkill op uw eigen actieve gebruikersnaam gebruikt, worden alle processen beëindigd, waarvan sommige onmiddellijk worden vernieuwd, maar veel achtergrondprocessen starten niet automatisch opnieuw. Dit leidt tot allerlei eigenaardig gedrag, en afhankelijk van wat je hebt uitgevoerd, wees niet erg verrast als je ontdekt dat het besturingssysteem zo onbruikbaar wordt dat je ofwel moet uitloggen en weer inloggen, of zelfs opnieuw moet opstarten als de actieve gebruiker account getarget door pkill was root- of administratief niveau.
Het pkill-commando is een beetje een steekvlam wanneer het op gebruikersnamen wordt gericht en kan worden gezien als een manier om in wezen alles van een ingelogde gebruiker met geweld af te sluiten, maar dat kan het ook een zeer krachtige tool voor het oplossen van problemen en bij het omgaan met ter ziele gegane of zombieprocessen die intact zijn gebleven ondanks het uitloggen van een gebruiker.
We hebben het pkill-commando eerder besproken om processen te doden met wildcards en specifieke apps/processen die tot een enkele gebruiker behoren, en hoewel het een recente toevoeging aan de Mac is sinds Mac OS van Mac OS X Mountain Lion verder bestaat het al geruime tijd in de Linux-wereld.