То, что ты ищешь, друг мой, не ps
, а pstree
.
Сначала определите первый процесс ядра. Его PID обычно равен 1 в системе без systemd и 2 с systemd.
Затем используйте эту команду:
$ pstree -p <1 or 2> | grep -o '([0-9]\+)' | grep -o '[0-9]\+'
Выбранный ответ (с ✅ )использует другую команду:
$ ps --ppid 2 -p 2 --deselect
Проблема с этой командой ps
заключается в том, что она включает только прямых потомков, но не всех потомков. Команда pstree
включает всех потомков. Вы можете сравнить и подсчитать вывод этих двух команд (, простой способ — использовать| wc
)для проверки.