---
title: "Estructuras básicas de un script de bash utilizando el condicional if"
description: "La estructura if se utiliza para ejecutar comandos basados en una condición. Si la condición es verdadera, se ejecutan los comandos dentro del bloque then. Estructura básica if [ condición ];..."
url: https://indaga.net/estructuras-basicas-de-un-script-de-bash-utilizando-el-condicional-if/
date: 2024-08-12
modified: 2024-08-12
author: "Directorio Indaga"
image: https://indaga.net/wp-content/uploads/2024/08/bash.webp
categories: ["GNU Linux", "Recursos y Utilidades"]
tags: ["bash", "bash scripting", "estructuras condicionales bash", "gnu linux", "linux"]
type: post
lang: es
---

# Estructuras básicas de un script de bash utilizando el condicional if

La estructura if se utiliza para ejecutar comandos basados en una condición. Si la condición es verdadera, se ejecutan los comandos dentro del bloque then.

** Estructura básica**
`
if [ condición ]; then
# comandos a ejecutar si la condición es verdadera
fi
`**
Estructura con else
**Se utiliza else para especificar comandos que se ejecutarán si la condición es falsa.
`
if [ condición ]; then
# comandos a ejecutar si la condición es verdadera
else
# comandos a ejecutar si la condición es falsa
fi
`
** Estructura con elif**
elif permite agregar condiciones adicionales. Si la primera condición es falsa, se evalúa la siguiente.
`
if [ condición1 ]; then
# comandos a ejecutar si la condición1 es verdadera
elif [ condición2 ]; then
# comandos a ejecutar si la condición2 es verdadera
else
# comandos a ejecutar si ninguna de las condiciones anteriores es verdadera
fi
`
**Ejemplo:**
Un ejemplo práctico que utiliza if, elif y else
`
#!/bin/bash`

echo "Introduce un número:"
read numero

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

**Estructura con múltiples condiciones**
Puedes combinar varias condiciones utilizando operadores lógicos como && (AND) para que los comandos se ejecuten solo si todas las condiciones son verdaderas.
`
if [ condición1 ] && [ condición2 ]; then
# comandos a ejecutar si ambas condiciones son verdaderas
fi
`
** Ejemplo :**
`
#!/bin/bash`

echo "Introduce dos números:"
read numero1
read numero2

if [ $numero1 -gt 10 ] && [ $numero2 -lt 20 ]; then
echo "El primer número es mayor que 10 y el segundo número es menor que 20"
fi

** Estructura con negación**
Puedes utilizar ! para negar una condición, de modo que los comandos se ejecuten si la condición es falsa.
`
if ! [ condición ]; then
# comandos a ejecutar si la condición es falsa
fi
`

** Ejemplo práctico**
`
#!/bin/bash`

echo "Introduce un número:"
read numero

if ! [ $numero -eq 10 ]; then
echo "El número no es igual a 10"
fi

** Estructura con case (alternativa a if)**
La estructura case es útil cuando tienes múltiples patrones a evaluar. Es una alternativa más limpia y legible a múltiples if-elif-else.
`
case variable in
patrón1)
# comandos a ejecutar si la variable coincide con el patrón1
;;
patrón2)
# comandos a ejecutar si la variable coincide con el patrón2
;;
*)
# comandos a ejecutar si la variable no coincide con ninguno de los patrones anteriores
;;
esac
`

** Ejemplo práctico**
`
#!/bin/bash`

echo "Introduce una letra:"
read letra

case $letra in
)
echo "Has introducido una letra minúscula"
;;
)
echo "Has introducido una letra mayúscula"
;;
*)
echo "No has introducido una letra"
;;
esac
