Aldrin Martoq escribió: > #!/bin/bash > > hijos_ssh () { > sshdpid=$(cat /var/run/sshd.pid) > pstree -p $sshdpid \ > | perl -ne \ > '@a = ($_ =~ m/(\d+)/g); print join("\n", @a)."\n"' \ > | grep -v "^$sshdpid$" > }
Yo creo que esta es una forma horrible de hacer esto. Yo me inclinaría por algo así: ps --ppid $(cat /var/run/sshd.pid) -o pid --no-headers y luego iterar (una vez) para obtener los hijos de esos procesos, o sea for pid in $(ps --ppid $(cat /var/run/sshd.pid) -o pid --no-headers); do ps --ppid $pid -o pid --no-headers done -- Alvaro Herrera Developer, http://www.PostgreSQL.org/ "How strange it is to find the words "Perl" and "saner" in such close proximity, with no apparent sense of irony. I doubt that Larry himself could have managed it." (ncm, http://lwn.net/Articles/174769/)