Le titre dit tout. J'ai un programme dans lequel on ne me donne que le PID, rien de plus vraiment, et je voudrais savoir comment obtenir plus d'informations sur le processus donné.
Réponses
Trop de publicités?ps -Flww -p THE_PID
vous montrera quelques informations. Voir le ps manpage pour plus d'informations sur le ps
commande. Le site "Section "SPÉCIFICATEURS DE FORMATS STANDARD explique la signification des différentes colonnes.
Je ne sais pas quelle est votre exigence exacte, mais ceci peut vous aider.
Il existe un répertoire séparé pour chaque processus dont le nom est le numéro pid dans le fichier /proc
.
ps -ef | grep docker
root 1700 1 0 Sep20 ? 00:03:04 /usr/bin/docker daemon --raw-logs
Dans la sortie ci-dessus, le PID est de 1700.
goto /proc/1700
cd /proc/1700
et faire ls
là
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
il y a beaucoup de fichiers qui contiennent toutes les informations sur le processus.
Comme :
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
Si vous avez besoin d'une commande de base pour obtenir des informations sur le processus, vous pouvez facilement l'obtenir en utilisant la commande :
man ps
Pour ajouter à la ps
réponse, il y a aussi la pidstat
qui affichera des statistiques supplémentaires comme le temps passé en mode utilisateur ou l'occupation du processeur. Vous pouvez l'utiliser avec :
# pidstat -p 51648
Vous pouvez également ajouter le -d
pour ajouter des détails sur les E/S :
# pidstat -p 51648 -d
Et vous pouvez également utiliser un nombre entier comme second paramètre pour que la commande se rafraîchisse toutes les X secondes :
# pidstat -p 51648 3