Убийте всички процеси, принадлежащи на потребител с pkill

Съдържание:

Anonim

Activity Monitor и традиционният инструмент за команден ред 'kill' са в състояние да се справят с повечето нужди от прекратяване на процеси, но ако някога ви се е налагало да насочите и убиете всички процеси, принадлежащи на един потребителски акаунт, знаете това може да бъде разочароваща задача. Въпреки че Activity Monitor ви позволява да сортирате „Други потребителски процеси“ и да избирате множество процеси, той не ви позволява да прекратите множество процеси едновременно.По същия начин стандартните команди kill и killall обикновено са насочени към конкретни процеси, а не към всяка отделна задача, принадлежаща на конкретен потребителски акаунт. Тук идва командата „pkill“, която улеснява незабавното спиране на всеки един процес, принадлежащ на който и да е потребител, чрез терминала.

Как да убиете всички процеси от потребител с pkill

Основният синтаксис за използване на pkill за убиване на всички потребителски процеси е както следва:

pkill -u потребителско име

Проверете дали всички процеси, принадлежащи на този потребител, са прекратени с помощта на флага -u на командата ps:

ps -u потребителско име

Ако приемем, че всичко е минало по предназначение, ще намерите празен списък, докладван.

pkill не е чувствителен към главни и малки букви, което означава, че потребителско име на „TestUser“ ще бъде идентифицирано по същия начин като „testuser“.

Ако ще изпробвате това върху себе си, би било най-добре да използвате бързо превключване на потребители, за да инициирате ново влизане с друг потребителски акаунт, или да използвате ssh сървъра и да го извършите на друг локален Mac. Използването на pkill на вашето собствено активно потребителско име ще доведе до прекратяване на всички процеси, някои от които се опресняват незабавно, но много фонови процеси няма да стартират отново автоматично. Това води до различни видове странно поведение и в зависимост от това, което използвате, не се изненадвайте много, ако откриете, че операционната система ще стане толкова неизползваема, че ще трябва или да излезете и да влезете отново, или дори да рестартирате, ако активният потребител акаунтът, към който е насочен pkill, е или на root, или на административно ниво.

Командата pkill е малко гореща лампа, когато е насочена към потребителски имена и може да се разглежда като начин за принудително затваряне на всичко, принадлежащо на влязъл потребител, но това също може да я направи много мощна инструмент за отстраняване на неизправности и при работа с нефункциониращи или зомбирани процеси, които са останали непокътнати въпреки излизането на потребителя.

Преди сме обсъждали командата pkill за убиване на процеси със заместващи символи и конкретни приложения/процеси, принадлежащи на един потребител, и въпреки че това е скорошно допълнение към Mac след Mac OS от Mac OS X Mountain Lion нататък, съществува в света на Linux от доста време.

Убийте всички процеси, принадлежащи на потребител с pkill