Ejercicio I · Sistemes Operatius I UB Juny 2020
Tema: Programación de scripts en Bash · Del examen Juny (2020)
Enunciado
Ejercicio I. Script Shell para registro y ordenación de calificaciones
Desarrolle e implemente un script en Bash que cumpla con los siguientes requisitos funcionales estructurados a través de un menú interactivo:
a.
Permitir la creación y adición de registros al archivo de texto ESTUDIANTE con el formato:
Apellido Nombre, nota primer parcial, nota segundo parcial, tercer parcial.
Utilice para las pruebas los siguientes datos de partida:
Badel Orlis,4,3,4
Camargo Patricia,2,3,5
Lopez Yandi,5,4,5
Montaño Carolina,5,3,4
Pedro Perez, 1,3,3
b.
Ordenar de manera ascendente por el campo del apellido el contenido del archivo ESTUDIANTE y almacenar el resultado en un nuevo archivo denominado ORDENADO.
c.
Generar y mostrar por pantalla un reporte a partir del archivo ORDENADO con el siguiente encabezado y formato de salida:
CALIFICACIONES DEFINITIVAS
Apellido Nombre Nota Definitiva
xxxxxxxxxxxxxxx xxx

Solución
Según los criterios oficiales de corrección
Desarrolle e implemente un script en Bash que cumpla con los requisitos funcionales de adición, ordenación y generación de informe estructurados mediante menú interactivo.
Solución: ```bash #!/bin/bash # Funciones para la gestión de alumnos alumno() { echo "----------- GUARDAR ALUMNOS -----------" echo "" echo "Ingrese los datos del estudiante: Apellido Nombre, nota 1, nota 2, nota 3:" read estudiante echo "$estudiante" >> ESTUDIANTE } ordenar() { sort ESTUDIANTE > ORDENADO echo "--- Contenido ordenado por apellido ---" more ORDENADO } informe() { echo "------------------------------------" echo " CALIFICACIONES DEFINITIVAS " echo "------------------------------------" printf "%-25s %s\n" "Apellido Nombre" "Nota Definitiva" echo "" awk -F"," '{ def = ((3) * 60 / 200) + ($4 * 40 / 100); printf "%-25s %.2f\n", $1, def }' ORDENADO echo "" echo "Listado completo en el archivo ESTUDIANTE:" more ESTUDIANTE } # Bucle principal de ejecución con menú interactivo while true do echo "------------------------------------" echo " Menu estudiantes " echo "------------------------------------" echo " 1) Ingresar un estudiante" echo " 2) Ordenar datos y verlos" echo " 3) Obtener informe" echo " 4) Salir" echo "" read -p "Ingrese su opcion: " opc case $opc in 1) alumno ;; 2) ordenar ;; 3) informe ;; 4) exit 0 ;; *) echo "Opción no válida." ;; esac done ```
La explicación paso a paso, hecha con IA, es Premium. Premium
Resuélvelo aquí mismo: corrección automática, pistas y solución paso a paso.
‹ Ejercicio I. Procesamiento de archivo de Premios… · Juny 2020