Domina la sentencia case en Bash con un ejemplo claro en Ubuntu. Aprende a evaluar opciones individuales y rangos de valores, similar a un switch, para construir menús interactivos y decisiones limpias en tus scripts. Verás cómo solicitar una opción de la A a la Z y responder con acciones específicas.
¿Qué es la sentencia case y para qué sirve en Bash?
La sentencia case permite validar una expresión simple (un número o una cadena) y compararla contra patrones definidos. También admite rangos de valores, muy útil cuando se requieren menús con varias opciones sin anidar múltiples IFs.
¿Qué valida y cómo se compara con switch?
Evalúa una cadena o número contra patrones definidos.
Se parece a un switch: cada patrón ejecuta un bloque.
Soporta rangos como [C-E] para agrupar opciones.
¿Por qué usarla para menús y decisiones?
Código más claro y mantenible.
Manejo sencillo de muchas opciones.
Soporte de un caso por defecto para entradas inválidas.
¿Cómo se construye el patrón con opciones y rangos?
Para este ejemplo, se crea una variable llamada "opción", se solicita un valor de la A a la Z, y se responde según el patrón elegido. Se muestran tres casos: A, B, y un rango de C a E; cualquier otro valor será incorrecto.
¿Cómo luce el código base en Bash?
echo -e "\nEjemplo: sentencia case"read -p "Ingrese una opción de la A a la Z: " opcion
case"$opcion"in"A")echo -e "\nOperación, guardar archivo";;"B")echo"Operación, eliminar archivo";;[C-E])echo"No está implementada la operación";; *)echo"Opción incorrecta";;# fin de patronesesac
¿Qué puntos de sintaxis debes cuidar?
case VARIABLE in: inicia la evaluación de patrones.
Patrón ): abre el bloque de la opción, por ejemplo "A").
;;: termina cada bloque de opción, es obligatorio.
[C-E]: define un rango de valores de C a E.
*): patrón comodín para cualquier valor no contemplado.
esac: cierra la sentencia case.
echo -e: permite usar saltos de línea con \n.
¿Qué resultados obtendrás al ejecutar el script?
Al probar el flujo, se observa lo siguiente según la entrada ingresada:
Si ingresas A: se muestra "Operación, guardar archivo".
Si ingresas B: se muestra "Operación, eliminar archivo".
Si ingresas un valor del rango C a E (por ejemplo D): se muestra "No está implementada la operación".
Si ingresas otro valor: se muestra "Opción incorrecta".
Este enfoque demuestra que case puede validar una expresión simple con conjunto de valores y rangos, ideal para manejar menús. Además, se conecta con habilidades ya vistas: IFs y expresiones condicionales, y prepara el terreno para trabajar luego con iteraciones y seguir construyendo utilidades en Postgres.
¿Te gustaría ver variantes con números o validar otros rangos? Deja un comentario con tus dudas o ejemplos que quieras practicar.