Antworten:
ps -Flww -p THE_PID
zeigt Ihnen einige Informationen. Weitere Informationen zum Befehl finden Sie in der ps-Manpageps
. In dem Abschnitt "STANDARD FORMAT SPECIFIERS" wird erläutert, was die verschiedenen Spalten bedeuten.
ww
anstatt nur einer w
? unix.stackexchange.com/questions/446099/…
Ich weiß nicht, was Ihre genaue Anforderung ist. aber das kann dir helfen.
Für jeden Prozess gibt es ein eigenes Verzeichnis mit dem Namen als PID-Nummer in /proc
.
ps -ef | grep docker
root 1700 1 0 Sep20 ? 00:03:04 /usr/bin/docker daemon --raw-logs
In der obigen Ausgabe ist die PID 1700.
gehe zu /proc/1700
cd /proc/1700
und tun ls
es
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
Es gibt viele Dateien, die alle Informationen zum Prozess enthalten.
Mögen:
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
Wenn Sie einen Basisbefehl benötigen, um Prozessinformationen abzurufen, können Sie den folgenden Befehl problemlos verwenden:
man ps
Um die ps
Antwort zu ergänzen, gibt es auch den pidstat
Befehl, der zusätzliche Statistiken wie die im Benutzermodus verbrachte Zeit oder die Belegung der CPU anzeigt. Sie können es verwenden mit:
# pidstat -p 51648
Sie können auch das -d
Flag hinzufügen, um Details zu E / A hinzuzufügen:
# pidstat -p 51648 -d
Sie können auch eine Ganzzahl als zweiten Parameter angeben, damit der Befehl alle X Sekunden aktualisiert wird:
# pidstat -p 51648 3
psutil
Bibliothek verwenden. Tun:psutil.Process(pid)
um das Prozessobjekt zu erhalten und dann verwenden Sie seine Schnittstelle zum Abrufen von Informationen über Speicher / CPU usw. usw.