Ответы:
ps -Flww -p THE_PID
покажет вам некоторую информацию. Смотрите страницу ps для получения дополнительной информации о ps
команде. Раздел «СТАНДАРТНЫЕ ФОРМАТЫ» указывает, что означают различные столбцы.
Я не знаю, каково ваше точное требование. но это может помочь вам
Для каждого процесса существует отдельный каталог с именем в качестве номера pid /proc
.
ps -ef | grep docker
root 1700 1 0 Sep20 ? 00:03:04 /usr/bin/docker daemon --raw-logs
В приведенном выше выводе PID составляет 1700.
перейти к /proc/1700
cd /proc/1700
и делать ls
там
ls
attr clear_refs cpuset fd limits mem net oom_score projid_map sessionid stat task
autogroup cmdline cwd fdinfo loginuid mountinfo ns oom_score_adj root setgroups statm timers
auxv comm environ gid_map map_files mounts numa_maps pagemap sched smaps status uid_map
cgroup coredump_filter exe io maps mountstats oom_adj personality schedstat stack syscall wchan
Есть много файлов, которые имеют всю информацию о процессе.
Подобно:
cat /proc/1700/status
Name: docker
State: S (sleeping)
Tgid: 1700
Ngid: 0
Pid: 1700
PPid: 1
TracerPid: 0
Uid: 0 0 0 0
Gid: 0 0 0 0
FDSize: 64
Groups: 0 999
VmPeak: 527576 kB
VmSize: 527512 kB
VmLck: 0 kB
VmPin: 0 kB
VmHWM: 46032 kB
VmRSS: 34180 kB
VmData: 449308 kB
VmStk: 136 kB
VmExe: 28324 kB
VmLib: 4236 kB
VmPTE: 296 kB
VmSwap: 5324 kB
Threads: 12
SigQ: 0/63662
SigPnd: 0000000000000000
ShdPnd: 0000000000000000
SigBlk: 0000000000000000
SigIgn: 0000000000000000
SigCgt: ffffffffffc1feff
CapInh: 0000000000000000
CapPrm: 0000003fffffffff
CapEff: 0000003fffffffff
CapBnd: 0000003fffffffff
Seccomp: 0
Cpus_allowed: f
Cpus_allowed_list: 0-3
Mems_allowed: 00000000,00000001
Mems_allowed_list: 0
voluntary_ctxt_switches: 437726
nonvoluntary_ctxt_switches: 27579
Если вам нужна базовая команда для получения информации о процессе, вы можете легко получить команду:
man ps
Чтобы добавить к ps
ответу, есть также pidstat
команда, которая покажет дополнительную статистику, например, время, проведенное в пользовательском режиме или занятость процессора. Вы можете использовать его с:
# pidstat -p 51648
Вы также можете добавить -d
флаг, чтобы добавить информацию о вводе / выводе:
# pidstat -p 51648 -d
И вы также можете использовать целое число в качестве второго параметра, чтобы команда обновлялась каждые X секунд:
# pidstat -p 51648 3
psutil
библиотеку. Делать:psutil.Process(pid)
чтобы получить объект процесса, а затем использовать его интерфейс для получения информации о памяти / процессоре и т. Д. И т. Д.