mejor manera para desconectar usuarios remotos

Alvaro Herrera alvherre en alvh.no-ip.org
Lun Ene 26 18:25:11 CLST 2009


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/)


Más información sobre la lista de distribución Linux