PID вложенной команды в подоболочке

Посмотрите на строки Repoи From repoв выводе dnf info. Они скажут вам:

  • Repoсообщает вам репозиторий, в котором находится доступный пакет. Если пакет установлен , он сообщит вам @System.
  • From repoотображается только для установленных пакетов. Он указывает репозиторий, из которого был создан установленный пакет. Он показывает имя репо (, например. fedoraилиupdates)или @commandlineдля установленного вручную RPM.

dnf builddepустановит зависимости сборки для последней версии указанного пакета в репозиториях. Он ничего не делает с установленными вручную RPM.

1
08.08.2020, 15:20
1 ответ

$! должен быть pid подоболочки. Попробуйте pstree -p $!, чтобы увидеть, есть ли в списке нужная вам информация.

Возможно, вам потребуется разобрать его (, возможно, в awk ), и вывод в канал отличается от того, что вы видите на экране.

Пример из моей оболочки входа. Вы должны увидеть один ffmpeg в своем списке.

paul $ pstree -p $PPID | cat -vet
mate-terminal(6849)-+-bash(6856)---vi(9107)$
                    |-bash(7338)$
                    |-bash(9456)-+-cat(10573)$
                    |            `-pstree(10572)$
                    |-{dconf worker}(6855)$
                    |-{gdbus}(6854)$
                    `-{gmain}(6852)$
paul $

Возможно, вам потребуется загрузить pstree из Mac Store:http://macappstore.org/pstree/

Типичное окончание awk для хранения Pid в переменной::

Pid=$( pstree -p $PPID | awk -v 'RS=)' -v 'FS=(' '/ffmpeg/ { print $NF }' )
0
18.03.2021, 23:14

Теги

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