Câu trả lời:
ps -Flww -p THE_PID
sẽ cho bạn thấy một số thông tin. Xem trang man ps để biết thêm thông tin về ps
lệnh. Phần "THÔNG SỐ KỸ THUẬT TIÊU CHUẨN" giải thích ý nghĩa của các cột khác nhau.
Tôi không biết yêu cầu chính xác của bạn là gì. nhưng điều này có thể giúp bạn.
Có thư mục riêng cho mọi quy trình với tên là số pid trong /proc
.
ps -ef | grep docker
root 1700 1 0 Sep20 ? 00:03:04 /usr/bin/docker daemon --raw-logs
Trong đầu ra trên, PID là 1700.
đi đến /proc/1700
cd /proc/1700
và làm 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
có nhiều tập tin có tất cả thông tin về quy trình.
Như:
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
Nếu bạn cần lệnh cơ bản để lấy thông tin quy trình thì bạn có thể dễ dàng sử dụng lệnh:
man ps
Để thêm vào ps
câu trả lời, đó cũng là pidstat
lệnh sẽ hiển thị các số liệu thống kê bổ sung như thời gian ở chế độ người dùng hoặc chiếm dụng cpu. Bạn có thể sử dụng nó với:
# pidstat -p 51648
Bạn cũng có thể thêm -d
cờ để thêm chi tiết về I / O:
# pidstat -p 51648 -d
Và bạn cũng có thể là một số nguyên dưới dạng tham số thứ hai để làm cho lệnh làm mới mỗi X giây:
# pidstat -p 51648 3
psutil
thư viện. Do:psutil.Process(pid)
để có được đối tượng tiến trình và sau đó sử dụng giao diện của nó để lấy thông tin về bộ nhớ / cpu, v.v.