Аргумент - то, что выяснение, где данный двоичный файл должен быть (/или/usr) является бесполезной сложностью, которая не служит никакой цели. Системы уже не смогли загрузиться без/usr в течение некоторого времени теперь, таким образом, больше нет причины сохранить два каталога.
Дополнительную информацию см. в http://www.freedesktop.org/wiki/Software/systemd/TheCaseForTheUsrMerge.
код
pgrep -P $(pgrep supervisord) | xargs ps -o %mem,%cpu,cmd -p | awk '{memory+=$1;cpu+=$2} END {print memory,cpu}'
получит только один дочерний уровень
, если вы хотите найти все процессы, производные от основного pid, используйте это code ..
ps -o pid,ppid,pgid,comm,%cpu,%mem -u {user name} | {grep PID_PRINCIPAL}
Идентификатор основного процесса - это PGID дочерних процессов.
Попробуйте использовать xargs
:
pgrep -P $(pgrep supervisord) | xargs ps -o %mem,%cpu,cmd -p | awk '{memory+=$1;cpu+=$2} END {print memory,cpu}'
дано PID
,
pid=24535
pstree -p $pid | grep -o '([0-9]\+)' | grep -o '[0-9]\+' |\
xargs ps -o %mem,%cpu,cmd -p | awk '{memory+=$1;cpu+=$2} END {print memory,cpu}'
# 15.5 905.2
Мне не повезло получать PID всех дочерних процессов из PGREP.