PS переключается для отображения PID, PPID, PGID и SID коллективно

Escape-последовательность ESC [ SPEC1 ; … m изменяет текстовые атрибуты (цвет, полужирный, и т.д.) впоследствии записанных символов. Это - одна из escape-последовательностей терминала ANSI. Каждый SPEC может быть одно из следующих (список не является исчерпывающим):

  • 0 для переключения на цвета по умолчанию.
  • 1 для включения полужирного шрифта.
  • 30 - 37 для выбирания основного цвета (черный, красный, зеленый, желтый, синий, пурпурный, голубой, серый).
  • 40 - 47 для выбирания цвета фона (тот же список).

Вот отрывок оболочки, что выводы почти, что Вы отправили.

printf "          "
for b in 0 1 2 3 4 5 6 7; do printf "  4${b}m "; done
echo
for f in "" 30 31 32 33 34 35 36 37; do
    for s in "" "1;"; do
        printf "%4sm" "${s}${f}"
        printf " \033[%sm%s\033[0m" "$s$f" "gYw "
        for b in 0 1 2 3 4 5 6 7; do
            printf " \033[4%s;%sm%s\033[0m" "$b" "$s$f" " gYw "
        done
        echo
     done
done

41
12.07.2013, 04:27
3 ответа

Вот:

$ ps  xao pid,ppid,pgid,sid | head
  PID  PPID  PGID   SID
    1     0     1     1
    2     0     0     0
    3     2     0     0
    6     2     0     0
    7     2     0     0
   21     2     0     0
   22     2     0     0
   23     2     0     0
   24     2     0     0

Если Вы хотите видеть имя процесса также, используйте это:

$ ps  xao pid,ppid,pgid,sid,comm | head
  PID  PPID  PGID   SID COMMAND
    1     0     1     1 init
    2     0     0     0 kthreadd
    3     2     0     0 ksoftirqd/0
    6     2     0     0 migration/0
    7     2     0     0 watchdog/0
   21     2     0     0 cpuset
   22     2     0     0 khelper
   23     2     0     0 kdevtmpfs
   24     2     0     0 netns
68
27.01.2020, 19:35
  • 1
    Что делают "коммуникация" и "голова"? –  JohnMerlino 12.07.2013, 17:49
  • 2
    @JohnMerlino печатает название команды и head другая команда, ничто, чтобы сделать с ps, это просто печатает первый N (10 по умолчанию) строки, я использовал его здесь для ограничения размера моего ответа. Во всем, что необходимо знать о PS, объясняют man ps. Попытка –  terdon♦ 12.07.2013, 18:09
  • 3
    comm не печатает полную команду. Например, если Вы работаете python foo.py, коммуникация только покажет Вам python часть, но нет python foo.py –  32r34wgf3e 30.01.2018, 00:19
  • 4
    Да, вот почему я сказал, что это печатает имя команды. Команда python, foo.py аргумент команды. Попробовать cmd если Вы хотите аргументы также. –  terdon♦ 30.01.2018, 00:26

Попробуйте

ps -efj | less

специально, если вы хотите узнать PID / PGID / PPID / SID для определенного процесса или PID, попробуйте:

ps -efj | grep ProcessName

ps -efj | grep PID

или для лучшего отформатированного вывода, попробуйте:

ps -ejf | egrep 'STIME|ProcessName'

ps -ejf | egrep 'STIME|pid'

Примеры :

ps -ejf | egrep 'STIME|http'

ps -ejf | egrep 'STIME|1234'

Образец:

[ram@thinkred1cartoon ~]$ ps -ejf | egrep 'STIME|http'

UID        PID  PPID  PGID   SID  C STIME TTY          TIME CMD
root      1450     1  1450  1450  0 08:45 ?        00:00:04 /usr/sbin/httpd -DFOREGROUND
ram       3717     1  2589  2589  0 08:47 ?        00:00:00 /usr/libexec/gvfsd-http --spawner :1.3 /org/gtk/gvfs/exec_spaw/1
apache   11518  1450  1450  1450  0 09:40 ?        00:00:00 /usr/sbin/httpd -DFOREGROUND
apache   11519  1450  1450  1450  0 09:40 ?        00:00:00 /usr/sbin/httpd -DFOREGROUND
apache   11520  1450  1450  1450  0 09:40 ?        00:00:00 /usr/sbin/httpd -DFOREGROUND
apache   11521  1450  1450  1450  0 09:40 ?        00:00:00 /usr/sbin/httpd -DFOREGROUND
apache   11522  1450  1450  1450  0 09:40 ?        00:00:00 /usr/sbin/httpd -DFOREGROUND
Предполагая, что 1234 PID, и вы хотите знать его связанный PPID, PGID, SID & CMD
Испытано на CentOS / Redhat 6.x & 7.x
14
27.01.2020, 19:35

Попробуйте использовать приведенную ниже команду, все работает нормально

ps -eo pid,ppid,pgid,sgid| head
  PID  PPID  PGID  SGID
    1     0     1     0
    2     0     0     0
    4     2     0     0
    6     2     0     0
    7     2     0     0
    8     2     0     0
    9     2     0     0
   10     2     0     0
   11     2     0     0
praveen@praveen:~$ 
-1
12.05.2021, 19:11

Теги

Похожие вопросы