Las sentencias condicionales son fundamentales en cualquier lenguaje de programación, y Bash no es la excepción. Estas sentencias permiten que tu script tome decisiones basadas en ciertas condiciones, lo que es esencial para crear scripts dinámicos y útiles.

Conceptos Clave

  1. Sentencia if: Evalúa una condición y ejecuta un bloque de código si la condición es verdadera.
  2. Sentencia if-else: Evalúa una condición y ejecuta un bloque de código si la condición es verdadera, y otro bloque si la condición es falsa.
  3. Sentencia if-elif-else: Permite evaluar múltiples condiciones en secuencia.
  4. Sentencia case: Similar a switch en otros lenguajes, permite evaluar una variable contra múltiples patrones.

Sentencia if

La estructura básica de una sentencia if en Bash es la siguiente:

if [ condición ]; then
    # Bloque de código si la condición es verdadera
fi

Ejemplo

#!/bin/bash

num=10

if [ $num -gt 5 ]; then
    echo "El número es mayor que 5"
fi

En este ejemplo, el script imprimirá "El número es mayor que 5" porque la condición $num -gt 5 (10 es mayor que 5) es verdadera.

Sentencia if-else

La estructura básica de una sentencia if-else es:

if [ condición ]; then
    # Bloque de código si la condición es verdadera
else
    # Bloque de código si la condición es falsa
fi

Ejemplo

#!/bin/bash

num=3

if [ $num -gt 5 ]; then
    echo "El número es mayor que 5"
else
    echo "El número no es mayor que 5"
fi

En este caso, el script imprimirá "El número no es mayor que 5" porque la condición $num -gt 5 (3 no es mayor que 5) es falsa.

Sentencia if-elif-else

La estructura básica de una sentencia if-elif-else es:

if [ condición1 ]; then
    # Bloque de código si condición1 es verdadera
elif [ condición2 ]; then
    # Bloque de código si condición2 es verdadera
else
    # Bloque de código si ninguna condición es verdadera
fi

Ejemplo

#!/bin/bash

num=7

if [ $num -gt 10 ]; then
    echo "El número es mayor que 10"
elif [ $num -gt 5 ]; then
    echo "El número es mayor que 5 pero menor o igual a 10"
else
    echo "El número es 5 o menor"
fi

En este ejemplo, el script imprimirá "El número es mayor que 5 pero menor o igual a 10" porque la condición $num -gt 5 (7 es mayor que 5) es verdadera.

Sentencia case

La estructura básica de una sentencia case es:

case variable in
    patrón1)
        # Bloque de código si variable coincide con patrón1
        ;;
    patrón2)
        # Bloque de código si variable coincide con patrón2
        ;;
    *)
        # Bloque de código si variable no coincide con ningún patrón
        ;;
esac

Ejemplo

#!/bin/bash

day="lunes"

case $day in
    "lunes")
        echo "Hoy es lunes"
        ;;
    "martes")
        echo "Hoy es martes"
        ;;
    *)
        echo "No es lunes ni martes"
        ;;
esac

En este ejemplo, el script imprimirá "Hoy es lunes" porque la variable day coincide con el patrón "lunes".

Ejercicios Prácticos

Ejercicio 1: Verificar si un Número es Par o Impar

Instrucciones: Escribe un script que verifique si un número dado es par o impar.

Solución:

#!/bin/bash

read -p "Introduce un número: " num

if [ $((num % 2)) -eq 0 ]; then
    echo "El número $num es par"
else
    echo "El número $num es impar"
fi

Ejercicio 2: Clasificar una Calificación

Instrucciones: Escribe un script que clasifique una calificación numérica (0-100) en letras (A, B, C, D, F).

Solución:

#!/bin/bash

read -p "Introduce una calificación (0-100): " grade

if [ $grade -ge 90 ]; then
    echo "Calificación: A"
elif [ $grade -ge 80 ]; then
    echo "Calificación: B"
elif [ $grade -ge 70 ]; then
    echo "Calificación: C"
elif [ $grade -ge 60 ]; then
    echo "Calificación: D"
else
    echo "Calificación: F"
fi

Resumen

En esta sección, hemos aprendido sobre las sentencias condicionales en Bash, incluyendo if, if-else, if-elif-else y case. Estas estructuras permiten que tus scripts tomen decisiones basadas en condiciones, lo que es esencial para crear scripts dinámicos y útiles. Asegúrate de practicar con los ejercicios proporcionados para reforzar tu comprensión de estos conceptos. En el próximo módulo, exploraremos los bucles en Bash, que te permitirán ejecutar bloques de código repetidamente bajo ciertas condiciones.

© Copyright 2024. Todos los derechos reservados