Как я могу получить все дерево процесса, порожденное данным процессом, отображенным как дерево и только что дерево т.е. никакие другие процессы?
Вывод мог, например, быть похожим
4378 ? Ss 0:10 SCREEN
4897 pts/16 Ss 0:00 \_ -/bin/bash
25667 pts/16 S+ 0:00 | \_ git diff
25669 pts/16 S+ 0:00 | \_ less -FRSX
11118 pts/32 Ss+ 0:00 \_ -/bin/bash
11123 pts/32 S+ 0:00 \_ vi
Я не мог получить желаемый результат просто с параметрами к ps
.
Следующее дает желаемый результат, но кажется немного включенным:
#!/bin/bash
pidtree() {
echo -n $1 " "
for _child in $(ps -o pid --no-headers --ppid $1); do
echo -n $_child `pidtree $_child` " "
done
}
ps f `pidtree 4378`
У кого-либо есть более легкое решение?