Una guía para principiantes de Bash Scripting

watch 6m, 33s
views 2

13:39, 22.05.2026

Contenido del artículo
arrow

  • Requisitos del sistema
  • Resumen
  • ¿Qué son los scripts de Bash?
  • Ventajas de utilizar scripts de Bash
  • Comprensión del shell Bash y la CLI
  • Introducción a los scripts de Bash
  • Ejecución de comandos Bash en el terminal
  • Escribir y ejecutar scripts de Bash
  • Nombrar correctamente los scripts
  • Inclusión de la línea Shebang
  • Escribir tu primer script Bash
  • Cómo ejecutar un script Bash
  • Fundamentos de la programación de scripts en Bash
  • Uso de comentarios en Bash
  • Declaración de variables y tipos de datos
  • Buenas prácticas para los nombres de variables
  • Manejo de la entrada y salida en scripts
  • Obtención de datos de entrada del usuario
  • Salida de texto y resultados
  • Comandos comunes de Bash (por ejemplo, echo, read)
  • Uso de lógica condicional (if, else)
  • Control de flujo en Bash: bucles y condiciones
  • Uso de bucles while
  • Uso de bucles for
  • Tratamiento de varios casos mediante operadores case
  • Automatización de scripts Bash con cron
  • Programación de tareas con crontab
  • Depuración y resolución de problemas en scripts de Bash
  • Activar el modo de depuración con set -x
  • Comprobación del estado de finalización del script
  • Añadir echo para mostrar información de depuración
  • Finalización forzada en caso de error mediante set -e
  • Diagnóstico de tareas Cron mediante archivos de registro
  • Reflexiones finales

¿Has utilizado alguna vez la línea de comandos para instalar un paquete o comprobar el estado del sistema? ¿Te has preguntado alguna vez cómo los desarrolladores automatizan tareas repetitivas, programan tareas o combinan comandos de sistema complejos, casi como por arte de magia? Esta «magia» suele basarse en scripts de Bash.

Imagina los scripts de Bash como fichas de recetas para tu ordenador. Indican con precisión a tu sistema qué hacer, en qué orden y cómo hacerlo, sin necesidad de introducir cada comando manualmente cada vez. Tanto si eres un aficionado a Linux, un entusiasta de DevOps o un completo novato en la línea de comandos, aprender a usar scripts de Bash te abre las puertas a una potente automatización y a un mayor control sobre tu entorno.

Repasemos paso a paso los puntos clave y podrás escribir tu primer script de Bash en muy poco tiempo.

Requisitos del sistema

Antes de sumergirte en el tema, asegúrate de que dispones de lo siguiente:

  • Un sistema basado en Unix – macOS o cualquier distribución de Linux (Ubuntu, Fedora, etc.)
  • El shell Bash instalado – La mayoría de los sistemas de tipo Unix ya tienen Bash
  • Un programa de terminal – Por ejemplo, Terminal (macOS), GNOME Terminal (Linux) o cualquier emulador de consola
  • Editor de texto – nano, vim, VS Code o incluso Notepad++, si utilizas WSL (Windows Subsystem for Linux)

Resumen

Antes de escribir scripts, es importante comprender los conceptos básicos.

Repasemos rápidamente qué son los scripts de Bash, por qué son útiles y cómo funciona el shell de Bash.

¿Qué son los scripts de Bash?

Los scripts de Bash consisten en escribir una secuencia de comandos en un archivo que el shell de Bash puede interpretar y ejecutar. Estos scripts automatizan todo: desde copias de seguridad e instalación de software hasta complejos flujos de trabajo de implementación.

Ventajas de utilizar scripts de Bash

  • Automatización de tareas repetitivas
  • Ahorro de tiempo y reducción de errores humanos
  • Mejora de la coherencia entre entornos
  • Simplificación de secuencias de comandos complejas
  • Mejora de los flujos de trabajo de DevOps y las cadenas de CI/CD

Comprensión del shell Bash y la CLI

Bash (Bourne Again SHell) es un procesador de comandos que permite a los usuarios interactuar con el sistema operativo a través de una interfaz de línea de comandos (CLI). Es el shell predeterminado en muchos sistemas Unix y admite funciones como el historial de comandos, el autocompletado con la tecla Tab y la creación de scripts.

Introducción a los scripts de Bash

Ahora que ya conoces los fundamentos, es hora de empezar a trabajar con comandos y scripts.

Comenzaremos ejecutando comandos sencillos manualmente, antes de pasar a la creación de scripts completos.

Ejecución de comandos Bash en el terminal

Antes de escribir scripts, es útil acostumbrarse a ejecutar comandos directamente en el terminal. Por ejemplo:

ls -l
pwd
echo "Hello, world!"

Cada uno de estos comandos puede formar parte de un script más adelante.

Escribir y ejecutar scripts de Bash

Una vez que te hayas familiarizado con el terminal, el siguiente paso es automatizar tareas mediante la escritura de scripts.

A continuación te explicamos cómo crear, estructurar y ejecutar tu primer script de Bash.

Nombrar correctamente los scripts

Utiliza nombres de archivo claros, escritos en minúsculas con guiones o guiones bajos, por ejemplo backup-database.sh o system_update.sh.

Inclusión de la línea Shebang

La primera línea de tu script debe ser la siguiente:

#!/bin/bash

Esto indica al sistema que ejecute el script utilizando el shell Bash.

Escribir tu primer script Bash

Ejemplo:

#!/bin/bash
echo "¡Bienvenido a tu primer script Bash!"
date

Cómo ejecutar un script Bash

  • Hazlo ejecutable:
chmod +x nombre_del_script.sh
  • Ejecútalo:
./nombre_del_script.sh

Fundamentos de la programación de scripts en Bash

Las buenas prácticas de programación de scripts son fundamentales para escribir scripts claros, eficaces y fáciles de mantener.

Veamos los elementos básicos que debe contener todo script de Bash.

Uso de comentarios en Bash

Los comentarios comienzan con # y son ignorados por el shell. 

Son ideales para la documentación.

# Este script da la bienvenida al usuario
echo "Hello!"

Declaración de variables y tipos de datos

name="Alice"
count=3

No pongas espacios alrededor del signo = !

Buenas prácticas para los nombres de variables

  • Utiliza nombres descriptivos: user_count, en lugar de uc
  • Utilice minúsculas o snake_case
  • Evite sobrescribir variables de entorno

Manejo de la entrada y salida en scripts

Los scripts a menudo necesitan interactuar con los usuarios o con el entorno del sistema.

Veamos cómo gestionar eficazmente los datos de entrada y salida en Bash.

Obtención de datos de entrada del usuario

read -p "Introduzca su nombre: " user
echo "¡Bienvenido, $user!"

Salida de texto y resultados

echo "Directorio actual: $(pwd)"

Comandos comunes de Bash (por ejemplo, echo, read)

  • echo - Visualización de mensajes
  • read - Obtención de datos de entrada del usuario
  • pwd - Mostrar el directorio actual
  • ls - Lista de archivos
  • date - Mostrar la hora actual

Uso de lógica condicional (if, else)

Los scripts a menudo tienen que tomar decisiones basadas en diferentes condiciones.

Así es como se implementa la lógica básica utilizando if y else operadores.

if [ "$user" == "admin" ]; then
  echo "Acceso concedido."

else
  echo "Acceso denegado."
fi

Control de flujo en Bash: bucles y condiciones

Para gestionar tareas repetitivas y condiciones múltiples, Bash proporciona estructuras de control de flujo.

Al aprender a utilizar bucles y operadores condicionales, ampliarás considerablemente las capacidades de tus scripts.

Uso de bucles while

count=1
while [ $count -le 5 ]; do
  echo "Count is $count"
  ((count++))
done

Uso de bucles for

for file in *.txt; do
  echo "Procesando $file"
done

Tratamiento de varios casos mediante operadores case

case $1 in
  start) echo "Iniciando el servicio..." ;;
  stop) echo "Parada del servicio..." ;;
  *) echo "Uso: $0 {start|stop}" ;;
esac

Automatización de scripts Bash con cron

La automatización es una de las ventajas clave de los scripts Bash.

Veamos cómo programar la ejecución automática de tus scripts con cron.

Programación de tareas con crontab

Para editar crontab:

crontab -e

Para ejecutar el script todos los días a las 9 de la mañana:

0 9 * * * /path/to/script.sh

Asegúrate de que el script sea ejecutable y utilice rutas absolutas.

Depuración y resolución de problemas en scripts de Bash

Ningún script es perfecto a la primera.

Saber cómo depurar y solucionar problemas en tus scripts es esencial para garantizar la fiabilidad.

Activar el modo de depuración con set -x

set -x

Muestra cada comando antes de ejecutarlo, lo que resulta ideal para el seguimiento.

Comprobación del estado de finalización del script

if [ $? -eq 0 ]; then
  echo "Success!"

else
  echo "Something went wrong."
fi

Añadir echo para mostrar información de depuración

Inserta echo operadores en diferentes lugares de tu script para rastrear valores o confirmar el flujo.

Finalización forzada en caso de error mediante set -e

#!/bin/bash
set -e

Detiene el script si cualquier comando ha fallado.

Diagnóstico de tareas Cron mediante archivos de registro

Revisa los registros de cron (a menudo en /var/log/syslog o mediante journalctl), para comprobar si se ejecutan tus scripts y cuándo lo hacen.

Reflexiones finales

La programación en Bash puede parecer complicada al principio, pero con solo conocer unos pocos conceptos básicos, puedes empezar a automatizar tareas, crear tus propias herramientas y obtener un control total sobre tu sistema. Cuando te hayas acostumbrado, empezarás a combinar Bash con otras potentes herramientas, como grep, awk y sed , para escribir scripts realmente fiables.

Recuerda: escribir scripts es como aprender un nuevo idioma: cuanto más practiques, más fluidez tendrás

Compartir

¿Te ha resultado útil este artículo?

Ofertas populares de VPS

-4.5%

CPU
CPU
4 Xeon Cores
RAM
RAM
4 GB
Space
Space
100 GB HDD
Bandwidth
Bandwidth
300 Gb
wKVM-HDD HK 4096 Windows

17.05 /mes

/mes

Facturado cada 12 meses

-10%

CPU
CPU
6 Xeon Cores
RAM
RAM
8 GB
Space
Space
200 GB HDD
Bandwidth
Bandwidth
300 Gb
KVM-HDD HK 8192 Linux

20.65 /mes

/mes

Facturado cada 12 meses

-5.6%

CPU
CPU
4 Xeon Cores
RAM
RAM
2 GB
Space
Space
60 GB HDD
Bandwidth
Bandwidth
Unlimited
wKVM-HDD 2048 Windows

13.7 /mes

/mes

Facturado cada 12 meses

-10%

CPU
CPU
4 Epyc Cores
RAM
RAM
4 GB
Space
Space
50 GB NVMe
Bandwidth
Bandwidth
Unlimited
wKVM-NVMe 4096 Windows

18.1 /mes

/mes

Facturado cada 12 meses

-10%

CPU
CPU
8 Epyc Cores
RAM
RAM
32 GB
Space
Space
200 GB NVMe
Bandwidth
Bandwidth
Unlimited
Keitaro KVM 32768
OS
CentOS
Software
Software
Keitaro

77.54 /mes

/mes

Facturado cada 12 meses

-10%

CPU
CPU
10 Xeon Cores
RAM
RAM
64 GB
Space
Space
300 GB SSD
Bandwidth
Bandwidth
Unlimited
KVM-SSD 65536 Linux

134.99 /mes

/mes

Facturado cada 12 meses

-15.6%

CPU
CPU
3 Xeon Cores
RAM
RAM
1 GB
Space
Space
20 GB SSD
Bandwidth
Bandwidth
30 Mbps
DDoS Protected SSD-KVM 1024 Linux

38 /mes

/mes

Facturado cada 12 meses

-8.1%

CPU
CPU
6 Xeon Cores
RAM
RAM
8 GB
Space
Space
200 GB HDD
Bandwidth
Bandwidth
Unlimited
wKVM-HDD 8192 Windows

31.25 /mes

/mes

Facturado cada 12 meses

-12.8%

CPU
CPU
3 Xeon Cores
RAM
RAM
1 GB
Space
Space
50 GB SSD
Bandwidth
Bandwidth
1 TB
wKVM-SSD 1024 Metered Windows

17 /mes

/mes

Facturado cada 12 meses

-10%

CPU
CPU
4 Xeon Cores
RAM
RAM
4 GB
Space
Space
100 GB SSD
Bandwidth
Bandwidth
Unlimited
MT5 KVM 4096 Windows

19.99 /mes

/mes

Facturado cada 12 meses

Otros artículos sobre este tema

Guía para instalar Composer
Guía para instalar Composer
cookie

¿Acepta las cookies y la política de privacidad?

Utilizamos cookies para asegurar que damos la mejor experiencia en nuestro sitio web. Si continúa sin cambiar la configuración, asumiremos que acepta recibir todas las cookies del sitio web HostZealot.