Trent W. Buck wrote:
> Chris Samuel <[email protected]> writes:
>
>> Hi folks,
>>
>> This is likely an easy one, but my brain is fading rapidly at the moment..
>>
>> Is there a way to easily collect all child (and grandchild, etc)
>> processes of a particular process?
>>
>> I know I can do ps --ppid $PID to get the immediate children, and I can
>> use pstree -p $PID to see all the descendants in graphical form, but I
>> want to get an easy to parse list.
>>
>> Any ideas, or is this a case of writing it myself?
> HTFU and write it. It's just simple recursion.
>
> $ f(){ for i; do x=$(pgrep -P $i)&& { echo $x;f $x; } ;done; }
>
> Testing:
>
> $ ps fux
> USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
> twb 25223 0.0 0.1 4572 1072 tty1 S+ Jun16 0:09 screen -DRR
> twb 20322 2.8 5.8 47476 43724 ? Ss Jun18 395:58 emacs
> --daemon
> twb 1056 0.4 1.6 15988 12548 ? Ss Jun10 126:37 SCREEN -DRR
> twb 1057 0.0 0.0 3372 464 ? S Jun10 0:00 \_ tail -f
> /home/twb/.emacs.d/irc-activity
> twb 20318 0.0 0.0 1588 600 pts/0 Ss+ Jun18 0:00 \_
> emacsclient --tty -c
> twb 5927 1.3 2.1 20044 16236 pts/3 Ss+ 10:33 0:40 \_ emacs -f
> gnus
> twb 6444 0.5 0.3 5976 2936 pts/1 Ss 11:18 0:01 \_ bash
> twb 6532 0.0 0.1 4192 872 pts/1 R+ 11:21 0:00 | \_ ps
> fux
> twb 6514 7.0 0.3 5976 2928 pts/2 Ss 11:21 0:00 \_ bash
> twb 6531 0.5 0.0 3344 432 pts/2 S+ 11:21 0:00 \_
> sleep 1h
> twb 1051 0.0 0.0 2664 720 ? Ss Jun10 0:01
> //bin/dbus-daemon --fork --print-pid 4 --print-address 6 --session
> twb 1050 0.0 0.0 4592 588 ? Ss Jun10 2:32 gpg-agent
> --daemon
> twb 1042 0.0 0.0 2628 524 ? Ss Jun10 1:46 ssh-agent
> -t12h
>
> $ f 1056
> 1057 5927 6444 6514 20318
> 6531
> $
If I understand Trent correctly 1057, 5927,6444, 6514, 20318, 6531 are
the 'child process PID's of 1056 ?;
as a complete ignoramus in this area (1) does something analogous to the
file' pathname' nomenclature,
exist for
parent-child processes ?
(2) can pstree
output in this form ?
regards Rohan McLeod
>
> _______________________________________________
> luv-main mailing list
> [email protected]
> http://lists.luv.asn.au/listinfo/luv-main
>
_______________________________________________
luv-main mailing list
[email protected]
http://lists.luv.asn.au/listinfo/luv-main