Если я запускаю 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-страницу для деталей.
