Как получить родительский PID данного процесса в GNU/Linux из командной строки?

Разрешенный, прежде чем спросили: cat /proc/1111/status | grep PPid

92
задан 08.06.2010, 12:42

2 ответа

Командная строка:

ps -o ppid= -p 1111

Функция:

ppid () { ps -p ${1:-$$} -o ppid=; }

Псевдоним (функция предпочтительна):

alias ppid='ps -o ppid= -p'

Сценарий:

#!/bin/sh
pid=$1
if [ -z $pid ]
then
    read -p "PID: " pid
fi
ps -p ${pid:-$$} -o ppid=

Если никакой PID не предоставляется функции или сценарию, они принимают значение по умолчанию для показа PPID текущего процесса.

Для использования псевдонима PID должен быть предоставлен.

110
ответ дан 07.12.2019, 07:58

Считайте/proc/$PID/status. Может быть легко задан сценарием:

#!/bin/sh
P=$1
if [ -z "$P" ]; then
    read P
fi
cat /proc/"$P"/status | grep PPid: | grep -o "[0-9]*"
6
ответ дан 07.12.2019, 07:58

Теги

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