Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/bin/bash
- # procesos.sh
- # angeldp
- # Script en Linux que solicita un proceso de los que hay en ejecución
- # y si el nombre introducido no existe o tiene alguna coincidencia
- # sigue ejecutándose el Script hasta que no se introduzca uno correcto.
- # Una vez introducido el proceso correcto, por medio de un menú se puede
- # ver la información del proceso, cambiar la prioridad, detener o relanzar
- # el proceso y por último matarlo.
- clear
- if [ "$USER" != "root" ]
- then
- echo "Tienes que ser root"
- exit
- fi
- echo "Introduzca el nombre del proceso"
- read PROCESO
- AUX=`ps aux | grep $PROCESO | wc -l`
- if [ $AUX -gt 1 ]
- then
- echo "Hay más de un proceso con ese nombre"
- LISTA=`ps aux | grep $PROCESO | cut -f7`
- echo "$LISTA"
- echo "indique cuál eliges"
- read PROCESO
- elif [ $AUX -eq 0 ]
- then
- echo "No hay proceso que se llame $PROCESO"
- echo "Indique uno válido"
- LISTA=`ps aux | cut -f7`
- echo "$LISTA"
- read PROCESO
- fi
- echo "Pulsa V para ver la información del proceso"
- echo "Pulsa M para modificar su prioridad"
- echo "Pulsa D para detener / Relanzar el proceso"
- echo "pulsa K para matar el proceso"
- read -n1 OPCION
- case $OPCION in
- V) ps aux | grep $PROCESO;;
- M) EST=`ps l | grep $PROCESO | tr -s ' ' | cut -d" " -f6 `
- echo "La prioridad actual es: $EST"
- echo "Indique la nueva prioridad con +19 máx para bajarla y -20 máx para subirla"
- read $PRIORIDAD
- PID=`ps aux | grep $PROCESO | tr -s ' ' | cut -d" " -f2`
- renice -n $PRIORIDAD -p $PID;;
- D) PROC=`ps aux | grep $PROCESO | tr -s ' ' | cut -d " " -f8 `
- echo "EL proceso está $PROC"
- if [ $PROC = S ]
- then
- ps aux | grep $PROCESO | kill -16
- else
- ps aux | grep $PROCESO | kill -15
- fi
- VERF=`ps aux | grep $PROCESO | tr -s ' ' | cut -d " " -f8 `
- echo "El proceso ahora está $VERF";;
- K) echo "Matar el proceso que ha señalado"
- ps aux | grep $PROCESO | kill -9
- echo "El proceso se ha matado"
- ps aux | grep $PROCESO;;
- esac
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement