Використовуйте pkill -U UID
або pkill -u UID
або ім’я користувача замість UID. Іноді skill -u USERNAME
може працювати, інший інструмент є killall -u USERNAME
.
Навичка була специфічною для Linux і тепер застаріла, а pkill - більш портативний (Linux, Solaris, BSD).
pkill дозволяють як числові, так і символічні UID, ефективні та реальні http://man7.org/linux/man-pages/man1/pkill.1.html
pkill - ... сигнальні процеси на основі імені та інших атрибутів
-u, --euid euid,...
Only match processes whose effective user ID is listed.
Either the numerical or symbolical value may be used.
-U, --uid uid,...
Only match processes whose real user ID is listed. Either the
numerical or symbolical value may be used.
Сторінка чоловічої майстерності говорить, чи дозволяється використовувати лише ім’я користувача, а не ідентифікатор користувача: http://man7.org/linux/man-pages/man1/skill.1.html
майстерність, хитрість ... Ці інструменти є застарілими і непідданими. Синтаксис команд погано визначений. Подумайте про використання killall, pkill
-u, --user user
The next expression is a username.
killall не позначений як застарілий у Linux, але він також не працюватиме з числовим UID; єдине ім’я користувача: http://man7.org/linux/man-pages/man1/killall.1.html
killall - вбивати процеси по імені
-u, --user
Kill only processes the specified user owns. Command names
are optional.
Я думаю, будь-яка утиліта, яка використовується для пошуку процесу в стилі Linux / Solaris / proc (procfs), буде використовувати повний перелік процесів (виконуючи деякий перегляд /proc
). Думаю, вони повторять /proc
цифрові вкладені папки та перевірять кожен знайдений процес на відповідність.
Щоб отримати список користувачів, використовуйте getpwent
(він отримуватиме одного користувача за дзвінок).
інструменти skill (propps & procps-ng) та killall (psmisc) обидва використовують getpwnam
виклик бібліотеки для розбору аргументу -u
параметра, і буде розбиратися лише ім'я користувача. pkill
(procps & procps-ng) використовує як atol, так і getpwnam для розбору -u
/ -U
аргументу та дозволу як числового, так і текстового специфікатора користувача.