Linux/Unix Shell Scripting - Alguien puede ayudarme con un script de bash para un trabajo?

 
Vista:

Alguien puede ayudarme con un script de bash para un trabajo?

Publicado por Borja (1 intervención) el 15/02/2022 01:09:58
Implementa un script en Bash llamado ej_CEval1_Borja_Carnicer.sh que reciba por
argumento un parámetro (puede ser user o report):
> en caso de ser user: tendrás que solicitarle al usuario que te dé un nombre de usuario para
crearlo en el sistema. Sin embargo, deberás comprobar si el usuario existe o no. En caso de
que exista, deberás mostrar un mensaje de ERROR descriptivo y finalizar el programa. En
caso de que no exista, lo deberás crear (debes usar el comando que no requiere interacción
por parte del usuario) y deberás mostrar al finalizar la creación un mensaje que le indique
que se ha creado el usuario correctamente.
> en caso de ser report: tendrás que solicitarle al usuario el nombre de un directorio del cual
le mostrarás un reporte por salida estándar, generado exclusivamente con awk, con
información basada en la salida de la aplicación del comando ls sobre dicho directorio. El
reporte debe contener la cantidad de ítems presentes en dicho directorio respecto a las
siguientes tres categorías:
- Directorios
- Ficheros en los que el propietario tenga sólo permisos de lectura (Los permisos que
tenga el grupo propietario u otros usuarios sobre ese fichero no son relevantes).
- Enlaces simbólicos
El script deberá comprobar lo siguiente:
1. Que se ejecuta con permisos de superusuario, a fin de poder hacer el reporte
completo sin problemas de permisos. En caso contrario, deberá mostrar un ERROR
descriptivo y finalizar el programa.
2. Que recibe un único argumento válido. En caso contrario, deberá mostrar un ERROR
descriptivo y finalizar el programa.
3. Que el nombre de usuario indicado no existe. En caso contrario, deberá mostrar un
ERROR descriptivo y finalizar el programa.
4. Que el directorio para generar el reporte existe. En caso contrario, deberá mostrar un
ERROR descriptivo y finalizar el programa.
5. Si el argumento no es ninguno de los indicados (user o report), también deberá
mostrar un ERROR descriptivo y finalizar el programa.

1/2

UD2.- Shell Script EJERCICIOS

En cada una de las comprobaciones anteriores, en caso de que se dé error el programa debe
finalizar con una salida diferente (1, 2, 3, 4 y 5, respectivamente). Lo puedes comprobar
leyendo la variable de retorno tras probar erróneamente cada una de las comprobaciones.
Versión mejorada del script: implementando las comprobaciones 1 a 4 mediante funciones:
- Función ejecuta_superusuario
- Función comprueba_argumentos
- Función comprueba_usuario
- Función comprueba_directorio
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder