Как я могу получить идентификатор дочернего процесса для процесса, запущенного с помощью xvfb-run?

#shell #xvfb

Вопрос:

При выполнении команд с xvfb-run , например:

 xvfb-run -d $CMD amp;
 

Как я могу получить PID $CMD процесса?

Если я попытаюсь:

 xvfb-run -d $CMD amp; PID=$! EXITCODE=$?
 

Я получаю PID=<PID of xvfb> и EXITCODE=0 (потому xvfb-run что, по-видимому, успешно вышел?).

( CMD=xeyes может использоваться для MWE, но он никогда (?) не выйдет, если явно не будет убит)

Комментарии:

1. ppid="$!"; childPID="$(ps -C <CMD> -o ppid=,pid= | awk -v ppid="$ppid" '$1==ppid {print $2}')" ?