On Mon, 2009-01-26 at 16:53 -0300, Victor Hugo dos Santos wrote:
> abajo sigue, las lineas que enviaste con algunos ayustes...  entre ellos:
>  - habia un error con el parametro "ps -ho" (al menos en RHEL, no
> reconoce la opcion h)
>  - ahora, se obtiene los tty en que esta el usuario
>  - y un cambio de uniq para "sort -u"
>  - tambien se envia un correo al admin con los usuarios que estaban

Yo quitaria los archivos temporales. Aca un ejemplo de como hacerlo

#!/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$"
}

for i in $(hijos_ssh); do echo pid $i; done
---------------------


Lo otro, cuidado que esto no es perfecto... si un proceso se llama "1"
podrias matar el proceso init (por decir algo pq no se puede, pero
podrias matar apache o cualquier otro proceso). Ejemplo:

sshd(12627)───sshd(12659,amartoq)───bash(12662)───10.sh(13649)

Calza por mientras aparece algo mejor los numeros entre parentesis y
quita el -u...

-- 
Aldrin Martoq <amar...@dcc.uchile.cl>
http://aldrin.martoq.cl/videopodcast/ http://aldrin.martoq.cl/techblog/

Attachment: signature.asc
Description: This is a digitally signed message part

Responder a