Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/bin/bash
- # buscar un usuario y determinar su 'UID' si esta es menor que '1000' debe cambiarse a una ID que se mayor o igual que 1000.
- # Guardo la linea que haga match con el usuario
- if [ $UID -ne 0 ]; then
- echo "Ejecute este script como usuario 'root'."
- exit 1
- fi
- user="$1"
- if ! grep ^$user /etc/passwd;then
- echo "No se encontro el usuario '$user'. Se sale."
- exit 1
- fi
- uid=$(cat /etc/passwd | grep ^$user | cut -d ":" -f 3)
- if [ $uid -lt 1000 ]; then
- echo "El usuario '$user' tiene la 'id' $uid"
- read -p "Ingrese un valor mayor o igual que 1000: " nuid
- # El uso de 'if' anidados no es recomendable pero
- # muchas veces es util.
- # Creamos una variable que contenga una cadena
- # de numeros, no se entiende como enteros, sino
- # como los caracteres que compoenen esa cadena
- # utilizando expresiones regulares.
- cadena='^[0-9]+$'
- if [[ $nuid =~ $cadena ]];then
- usermod -u $nuid $user
- else
- echo "Numero que ingreso no es válido"
- exit 1
- fi
- else
- echo "El usuario '$user' tiene una ID correcta: $uid"
- exit 0
- fi
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement