- Domina los fundamentos de Bash y cómo escribir scripts paso a paso.
- Aprende a automatizar tareas y mejorar tu flujo de trabajo en sistemas Linux.
- Descubre ejemplos reales prácticos y bien explicados de scripts Bash útiles.
- Cómo ejecutar, depurar y programar scripts de forma eficiente y segura.
Dominar el scripting en Bash puede ser una herramienta muy poderosa si trabajas con sistemas Linux o Unix. Ya seas usuario principiante o administrador de sistemas con experiencia, crear scripts con Bash te permite automatizar tareas, ejecutar procesos complejos con un solo archivo y ahorrar un buen punado de horas. Sin embargo, para muchos puede parecer algo intimidante al principio, especialmente si no están acostumbrados a trabajar desde la terminal. Tranquilo, en esta guía te vamos a explicar todo lo que necesitas saber para que puedas escribir, ejecutar y sacarle todo el jugo a tus scripts Bash.
Esta es una guía completa, práctica y pensada para usuarios reales, no solo para desarrolladores. Abordaremos desde lo más básico hasta ejemplos más avanzados, para que puedas aprender a tu ritmo. Incluye explicaciones claras, instrucciones paso a paso y funciones útiles con ejemplos que podrás probar en tu propio sistema.
¿Qué son los Bash Scripts?
Los scripts Bash son archivos de texto que contienen una secuencia de comandos para ejecutarse de forma automática con Bash, el intérprete de comandos más común en sistemas Linux. Su principal ventaja es que permiten automatizar cualquier tarea que puedas hacer en terminal, desde copiar archivos hasta procesar logs o interactuar con otros programas del sistema.
Estos scripts suelen guardarse con extensión .sh y pueden ejecutarse directamente desde la consola o programarse para que se disparen en momentos concretos, por ejemplo, con el sistema de cron. Su nombre viene de Bash, acrónimo de Bourne Again Shell, el estándar de facto en los sistemas tipo Unix, como Linux o macOS.
¿Por qué deberías aprender scripting en Bash?
Aprender a crear y usar scripts Bash te permite automatizar tareas repetitivas, ahorrar tiempo y evitar errores humanos al ejecutar siempre la misma secuencia de comandos. Estas son algunas razones por las que deberías aprender Bash scripting:
- Automatización total: cualquier tarea que hagas de forma frecuente se puede convertir en un script.
- Optimizar tu flujo de trabajo: ejecuta varias tareas en una sola línea o comando.
- Aprendizaje práctico: al escribir scripts te obligas a entender mejor cómo funciona el sistema y sus comandos.
- Transferencia de conocimiento: puedes compartir scripts con compañeros o usarlos en distintos equipos.
- Control absoluto: no dependes de aplicaciones gráficas. Puedes controlar tu sistema desde la terminal.
Requisitos básicos y entorno necesario
Para seguir los ejemplos de este artículo y escribir tus propios scripts Bash, solo necesitas una distribución de Linux (por ejemplo Ubuntu, Fedora, Debian o Manjaro) o cualquier sistema que tenga Bash como intérprete. También puedes aprender desde Windows si usas WSL (Windows Subsystem for Linux), Cygwin o incluso Replit, una plataforma online con shell integrada.
Asegúrate de tener acceso a una terminal Bash. Puedes comprobar qué shell estás usando con:
echo $SHELL
También puedes ejecutar:
which bash
Eso te mostrará la ruta del intérprete Bash (/bin/bash o similar), que luego necesitarás incluir al inicio de tus scripts.
Cómo crear tu primer script Bash
- Crea el archivo: usa tu editor favorito desde la terminal o entorno gráfico. Por ejemplo:
nano mi_script.sh - Declara el intérprete: la primera línea debe señalar que se va a usar Bash. Esta línea se llama shebang:
#!/bin/bash - Agrega algunos comandos: por ejemplo, algo muy simple:
#!/bin/bash echo "Hola, mundo" - Guarda el archivo y dale permisos de ejecución:
chmod +x mi_script.sh - Ejecuta el script:
./mi_script.sh
¡Ya has creado tu primer script! Puedes modificarlo tantas veces como quieras y añadir más comandos.
Conceptos clave de scripting en Bash
Antes de ponernos con ejemplos complejos, es imprescindible conocer algunos conceptos que forman la base de cualquier script.
Variables en Bash
Las variables permiten guardar valores para usarlos más adelante. Solo necesitas asignarlas así:
nombre="Juan"
echo $nombre
Observation que para usar el valor, se usa $ delante del nombre de la variable.
Entrada y salida
Usamos el comando read para capturar lo que escribe el usuario:
echo "Introduce tu nombre"
read nombre
echo "Hola, $nombre"
Para salidas usamos echo o printf.
Comentarios
Las líneas que comienzan con # son comentarios:
# Esto es un comentario
Condicionales
Para ejecutar distintas acciones dependiendo de una condición:
if ; then
echo "Mayor de edad"
else
echo "Menor de edad"
fi
Bucles
Ejecutan comandos repetidamente. Hay varios tipos:
Bucle while
i=0
while ; do
echo "$i"
((i++))
done
Bucle for
for dia in lunes martes miercoles; do
echo "Hoy es $dia"
done
Funciones
Para agrupar comandos reutilizables:
mi_funcion() {
echo "Ejecutando la función"
}
mi_funcion
Ejemplos prácticos de bash scripts
Actualizar el sistema con un comando
#!/bin/bash
sudo apt update && sudo apt upgrade -y && sudo apt autoremove -y
echo "Sistema actualizado."
Copiar un archivo a otra carpeta
#!/bin/bash
cp archivo.txt /home/usuario/respaldo/
echo "Archivo copiado con éxito."
Crear directorios desde un array
#!/bin/bash
directorios=(Docs Imágenes Videos)
for dir in "${directorios}"; do
mkdir "~/Carpeta/$dir"
done
Script que pregunta por número y evalúa condición
#!/bin/bash
echo "Introduce un número"
read num
if ; then
echo "Número alto"
else
echo "Número bajo"
fi
Script con argumentos
Los argumentos se pasan al ejecutar el script, se accede con $1, $2, etc.
#!/bin/bash
echo "Primer argumento: $1"
echo "Segundo argumento: $2"
Redirección de salidas
Para guardar una salida a un archivo:
echo "Mensaje de log" &>> log.txt
Cómo ejecutar un script de distintas formas
- bash nombre.sh → ejecuta aunque no tenga permisos
- ./nombre.sh → necesita permisos de ejecución
- sh nombre.sh → puede usarse si el script es compatible con
sh
Para darte permisos a ti mismo:
chmod +x archivo.sh
Automatizar scripts usando cron
Cron es el sistema del propio Linux para ejecutar tareas programadas. Puedes editar tu lista con:
crontab -e
Y añadir una línea como esta, para que se ejecute el script cada día a las 10 de la mañana:
0 10 * * * /ruta/al/mi_script.sh
Depuración y buenas prácticas
Para evitar errores es recomendable usar:
set -epara que el script se detenga si algún comando fallaset -xpara mostrar el debug línea a línea- Usar nombres de variables claros, comentarios y formato legible
- Evita dejar contraseñas o datos sensibles en el script
- Limpia temporales si tu script los usa
Comandos de red y logs dentro de scripts
También puedes usar herramientas como crear bots para redes sociales, ping, curl, ssh, o grep para leer logs, conexiones o automatizar flujos de servidores.
Por ejemplo, para copiar logs de un VPS remoto:
scp usuario@ip:/var/log/apache2/error.log ~/Descargas/logs/
O para enviar un ping a un dominio:
ping -c 4 google.com
Para automatizar estas acciones, se pueden integrar en scripts que faciliten tareas repetitivas o de monitoreo.
Más allá: integrar Bash con otros lenguajes
Si lo necesitas, puedes invocar desde Bash procesos en Python, PHP, Node.js u otros lenguajes. También puedes usar Bash dentro de contenedores Docker o scripts complejos de infraestructura como código.
Muchos administradores de sistemas combinan estos entornos para gestionar proyectos a gran escala, manejar backups, procesos en microservicios o despliegues CI/CD. ¡Las posibilidades son amplias y se adaptan a tus necesidades!
Dominar los scripts en Bash es una habilidad esencial si usas Linux en el día a día. Te abre las puertas a automatizar flujos pesados, gestionar servidores, hacer monitorización o simplemente ganar agilidad con tareas cotidianas. Todo lo que puedas hacer en una terminal, puede automatizarse en un Bash Script. A medida que experimentes y te acostumbres a su lógica, podrás construir utilidades increíbles que te ahorrarán tiempo, evitarán errores y te permitirán entender mucho mejor el funcionamiento profundo del sistema operativo.
Cómo crear un bot para Mastodon: guía completa y actualizada paso a paso

Expertos en software, desarrollo y aplicación en industria y hogar. Nos encanta sacar todo el potencial de cualquier software, programa, app, herramienta y sistema operativo del mercado.
