Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/bin/bash
- #Sergio Álvarez Peiro, 740241
- #Victor Sisqués Cortés, 740138
- usuarios="/etc/passwd"
- id=$(id -u)
- if [ "$id" != "0" ]
- then
- echo "Este script necesita privilegios de administracion"
- exit 1
- fi
- if [ $# -ne 2 ]
- then
- echo "Numero incorrecto de parametros"
- elif [ $1 = "-a" ]
- then
- while read -r line
- do
- user=$(echo "$line" | cut -d "," -f 1)
- pass=$(echo "$line" | cut -d "," -f 2)
- name=$(echo "$line" | cut -d "," -f 3)
- if [ -n "$user" -a -n "$pass" -a -n "$name" ]
- then
- actual=$(grep "^$user:" "$usuarios")
- if [ -n "$actual" ]
- then
- echo "El usuario "$user" ya existe"
- else
- useradd -U -m -K UID_MIN=1000 -k /etc/skel -c "$name" "$user"
- echo ""$user":"$pass"" | chpasswd
- chage -M 30 "$user"
- echo ""$name" ha sido creado."
- fi
- else
- echo "Campo invalido"
- exit 1
- fi
- done < "$2"
- elif [ $1 = "-s" ]
- then
- mkdir -p /extra/backup
- while read -r line
- do
- user=$(echo "$line" | cut -d "," -f 1)
- if [ -n "$user" ]
- then
- actual=$(grep "^$user:" "$usuarios")
- if [ -n "$actual" ]
- user_home=$(grep "^$user:" "$usuarios" | cut -d":" -f6)
- usermod -L "$user"
- then
- if $(tar -cf /extra/backup/"$user".tar "$user_home"/* > /dev/null 2>&1)
- then
- userdel -r "$user" > /dev/null 2>&1
- fi
- fi
- else
- echo "Campo invalido"
- exit 1
- fi
- done < "$2"
- else
- echo "Opcion invalida" >&2
- exit 1
- fi
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement