miércoles, 9 de enero de 2008

Una de scripts (2)

Siguiendo con el anterior post... aquí va otro script, este ya empieza a complicarse aunque es bastante fácil de entender su objetivo.

Su finalidad, es que muestre todos los procesos relacionados con la cadena que se le pase como argumento. Y en el caso de que solo haya un proceso, te da la opción de matar dicho proceso con la orden kill.

Aunque el comentario, sobre que devuelve el numero de proceso que acaba de matar... no va. Eso lo tendré que ver porque sucede.

#!/bin/bash
#!/bin/bash

# Devuelve si todo va correcto el numero del proceso que ha matado
# Cero si ha habido algun problema

RUTA=/usr/local/bin

echo "Viendo procesos para $1"
echo ""

ps aux | grep $1 | grep -v grep | grep -v $RUTA/ver 2> /dev/null

if [ $? -eq 1 ]; then

echo "Ha habido un fallo o no se ha encontrado nada relacionado con el programa."
exit 0
else

numero=$(ps aux | grep $1 | grep -v grep | grep -v $RUTA/ver | wc -l )
echo "Numero de procesos $numero"

if [ $numero -eq 1 ]; then
proceso=$(ps aux | grep $1 | grep -v grep | grep -v $RUTA/ver | awk '{print $2}')
echo "¿Quiere matar el proceso numero $proceso ?"
read cont

if [ $cont = "s" -o $cont = "S" ]; then
echo "Matando el proceso ... "
kill -9 $proceso
if [ $? -eq 1 ]; then
echo " Error al matar el proceso. Compruebe el usuario."
exit 0
fi
fi

fi


echo " "
exit $numero
fi

1 comentario:

Anónimo dijo...

Mariooooooooo eres un friki de merdaaaaaaa... perè com pots tindre un blog amb scripts?? senyor senyor... aço ja es massa... encara no has trobat el pingüinet de peluxe?? jajajaja aleeeeeee ja t'he deixat un comentari en el blog este... aaaaaaaa les fotos no m'agraden no he eixit be en cap xD