Если я запускаю ps -ef
в терминале OSX, список процессов включает в себя UID - числовой идентификатор пользователя владельца процесса. Как я могу увидеть имя владельца процесса?
2 ответа
Используйте флаг -j
. Например, ps -j
или в сочетании с другими флагами, такими как ps -efj
.
Страница man (man ps
) описывает флаг -j
следующим образом:
Информация о печати, связанная со следующими ключевыми словами: пользователь, pid, ppid, pgid, sess, jobc, состояние, tt, время и команда.
Часть "пользователь" - это имя пользователя.
Простое решение: используйте ps -ej
.
Общее решение: используйте ps -eo user,pid,tty,command
.
Команда ps
позволяет вам контролировать, какая информация (какие столбцы) отображается с помощью опции -o
, например
ps -o user,pid,%cpu,%mem,command
отображает имя пользователя, PID, последнее использование процессора и памяти и команду для каждого отображаемого процесса.
Опция -j
отображает пользователя, pid, родительский pid, gid процесса, сессию, счетчик контроля задания, состояние, имя управляющего терминала, накопленное время ЦП и команду с аргументами.
Опция -f
отображает uid, pid, родительский pid, недавнее использование ЦП, время запуска процесса, контроль tty, истекшее использование ЦП и связанную команду. Следовательно, вероятно, нет необходимости хранить -f
с -j
или -o
.
Смотрите man-страницу для деталей.