Script de Xestión de Usuarios en Bash para Linux

Outras linguas estranxeiras3,78 KB

Script de Xestión de Usuarios

#!/bin/bash
#Script de xestión de usuarios
clear
echo -e "\t XeStIoN dE uSuArIoS \n"
echo -e "1-Listar usuarios"
echo -e "2-Crear usuario"
echo -e "3-Eliminar usuario"
echo -e "4-Modificar usuario"
echo -e "5-Saír \n"
echo -e "Introducir opción -> \c"
read opcion
if [ $opcion -eq 1 ]; then
cat /etc/passwd | cut -d ":" -f 1
elif [ $opcion -eq 2 ]; then
echo -e "Introducir nome de usuario a crear -> \c"
read user
grep $user /etc/passwd &> /dev/null
if [ $? -ne 0 ]; then
echo -e "Introducir UID do usuario -> \c"
read uid
echo -e "Introducir GID do usuario -> \c"
read gid
echo -e "Introducir HOME do usuario -> \c"
read home
echo -e "Introducir SHELL do usuario -> \c"
read shell
echo -e "Introducir contrasinal -> \c "
read -s password1
echo -e "\nIntroducir contrasinal de novo -> \c"
read -s password2
if [ $password1 == $password2 ]; then
useradd -u $uid -g $gid -m -d $home -s $shell $user &> /dev/null
echo "$password1" | passwd $user &> /dev/null
echo -e "\nUsuario creado satisfactoriamente \n"
exit
else
echo -e "Os contrasinais non coinciden, non se crea o usuario \n"
fi
else
echo -e "O usuario introducido xa existe \n"
fi
elif [ $opcion -eq 3 ]; then
echo -e "Introducir nome de usuario a eliminar -> \c"
read user
grep $user /etc/passwd &> /dev/null
if [ $? -eq 0 ]; then
userdel -rf $user
else
echo -e "O usuario introducido non existe \n"
fi
elif [ $opcion -eq 4 ]; then
echo -e "MODIFICAR USUARIO \n"
echo -e "1-Modificar contrasinal"
echo -e "2-Modificar HOME"
echo -e "3-Modificar SHELL\n"
echo -e "Introducir opción -> \c"
read opcion2
if [ $opcion2 -eq 1 ]; then
echo -e "\nIntroducir usuario -> \c"
read usuario
grep $usuario /etc/passwd &>/dev/null
if [ $? -eq 0 ]; then
echo -e "\nIntroducir novo contrasinal -> \c"
read -s pass1
echo -e "\nIntroducir novo contrasinal de novo -> \c"
read -s pass2
if [ $pass1 == $pass2 ]; then
echo $pass1 | passwd --stdin $usuario &> /dev/null
echo -e "\nO contrasinal modificouse correctamente \n"
else
echo -e "Os contrasinais non coinciden, non se modificou nada \n"
fi
else
echo -e "\nO usuario introducido non existe"
fi
elif [ $opcion2 -eq 2 ]; then
echo -e "Introducir usuario -> \c"
read usuario
echo -e "Introducir novo HOME -> \c"
read newhome
usermod -m -d $newhome $usuario
echo -e "Modificouse o HOME correctamente \n"
elif [ $opcion2 -eq 3 ]; then
echo -e "Introducir usuario -> \c"
read usuario
echo -e "Introducir novo SHELL -> \c"
read newshell
usermod -s $newshell $usuario
echo -e "Modificouse o SHELL correctamente \n"
else
echo -e "A opción introducida non é válida \n"
fi
elif [ $opcion -eq 5 ]; then
echo -e "Seleccionou saír \n"
exit
else
echo -e "A opción introducida non é válida \n"
fi

Descargar

PDF Word HTML