1

Я хотел бы сделать что-то вроде top -o cpu но с именами пользователей для каждого процесса, показанного в каждой строке. Как я могу это сделать? Спасибо!

п.с. Я на Mac OS. Я не уверен, если top команда отличается от других не-BSD.

1 ответ1

2

Примечание. Это решение относится только к Mac OS. Версия для Linux существенно отличается.

top не показывает имя пользователя по умолчанию, только UID.

Вы можете выбрать, какие столбцы показывать с опцией -stats .

Например

top -stats pid,user,cpu,command

покажет идентификатор процесса, имя пользователя, использование процессора и команду

Processes: 167 total, 2 running, 4 stuck, 161 sleeping, 828 threads                                                                                                                                       09:55:43
Load Avg: 0.99, 1.31, 1.72  CPU usage: 7.6% user, 12.7% sys, 80.86% idle    SharedLibs: 11M resident, 10M data, 0B linkedit. MemRegions: 46953 total, 2034M resident, 55M private, 708M shared.
PhysMem: 1166M wired, 2962M active, 849M inactive, 4977M used, 3213M free. VM: 402G vsize, 1054M framework vsize, 13229803(2) pageins, 816120(0) pageouts.
Networks: packets: 909991873/986G in, 888624532/347G out. Disks: 35379646/317G read, 10360185/448G written.

PID                                              USER                                                     %CPU                                           COMMAND
89849                                            root                                                     0.0                                            installd
87409                                            corti                                                    0.0                                            cookied
75165                                            root                                                     8.4                                            top
75163                                            corti                                                    0.0                                            mdworker

Вы можете увидеть список с man top:

          pid    Process ID (default).

          command
                 Command name.

          cpu    CPU usage.

          csw    Number of context switches.

          time   Execution time.

          threads
                 alias: th
                 Number of threads (total/running).

          ports  alias: prt
                 Number of Mach ports.

          mregion
                 alias: mreg, reg
                 Number of memory regions.

          rprvt  Resident private address space size.

          rshrd  Resident shared address space size.

          rsize  Resident memory size.

          vsize  Total memory size.

          vprvt  Private address space size.

          kprvt  Private kernel memory size.

          kshrd  Shared kernel memory size.

          pgrp   Process group id.

          ppid   Parent process id.

          state  alias: pstate
                 Process state.

          uid    User ID.

          wq     alias: #wq, workqueue
                 The workqueue total/running.

          faults alias: fault
                 The number of page faults.

          cow    alias: cow_faults
                 The copy-on-write faults.

          user   alias: username Username.

          msgsent
                 Total number of mach messages sent.

          msgrecv
                 Total number of mach messages received.

          sysbsd Total BSD syscalls.

          sysmach
                 Total Mach syscalls.

          pageins
                 Total pageins.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .