Cómo crear scripts en Linux paso a paso

En el mundo de la administración de sistemas y el desarrollo, los scripts para Linux son herramientas esenciales que permiten automatizar tareas repetitivas, mejorar la eficiencia y reducir errores humanos. Un script no es más que un archivo de texto que contiene una serie de comandos que el sistema puede ejecutar de forma secuencial. Veremos cómo crear scripts en Linux paso a paso. Aunque existen muchos lenguajes de scripting, el más común en entornos Linux es Bash (Bourne Again SHell).

¿Por qué usar scripts?

  • Automatización: Desde copias de seguridad hasta actualizaciones del sistema.
  • Eficiencia: Ejecutar múltiples comandos con un solo archivo.
  • Repetibilidad: Asegura que las tareas se realicen de la misma manera cada vez.
  • Escalabilidad: Ideal para administrar múltiples servidores o entornos.

¿Cómo crear un archivo .sh?

  1. Abre una terminal.
  2. Crea el archivo con un editor de texto, por ejemplo:
nano mi_script.sh
  1. Escribe tu script dentro del archivo. Por ejemplo:
#!/bin/bash
echo "Hola, mundo"
  1. Guarda y cierra el archivo (en nano, presiona Ctrl + O, luego Enter, y Ctrl + X).
  2. Haz el archivo ejecutable:
chmod +x mi_script.sh
  1. Ejecuta el script:
./mi_script.sh

Ejemplos Practicos

Script de copia de seguridad

Este script crea una copia comprimida (formato .tar.gz) de la carpeta de documentos del usuario, guardándola en una carpeta de backups con la fecha actual en el nombre del archivo. Es útil para automatizar respaldos diarios o semanales.

#!/bin/bash
# backup.sh - Realiza una copia de seguridad de una carpeta

FECHA=$(date +%Y-%m-%d)
ORIGEN="/home/usuario/documentos"
DESTINO="/home/usuario/backups/backup-$FECHA.tar.gz"

tar -czf $DESTINO $ORIGEN
echo "Copia de seguridad creada en $DESTINO"

Monitor de uso de disco

Este script revisa el porcentaje de uso del disco raíz (/). Si supera el 90%, muestra una advertencia. Ideal para prevenir problemas por falta de espacio en servidores o equipos de producción.

#!/bin/bash
# disk_monitor.sh - Alerta si el uso del disco supera el 90%

USO=$(df / | grep / | awk '{ print $5 }' | sed 's/%//g')

if [ $USO -gt 90 ]; then
  echo "¡Advertencia! El uso del disco ha superado el 90%."
fi

Actualización automática del sistema

Ejecuta los comandos necesarios para actualizar el sistema en distribuciones basadas en Debian (como Ubuntu). Es útil para mantener el sistema al día sin tener que escribir los comandos manualmente cada vez.

#!/bin/bash
echo "Actualizando el sistema..."
sudo apt update && sudo apt upgrade -y
echo "Actualización completada."

Renombrar archivos en lote

Este script recorre todos los archivos .jpg en el directorio actual y los renombra secuencialmente como imagen_1.jpgimagen_2.jpg, etc. Muy útil para organizar fotos o imágenes descargadas.

#!/bin/bash
i=1
for archivo in *.jpg; do
  mv "$archivo" "imagen_$i.jpg"
  ((i++))
done
echo "Archivos renombrados."

Comprobar si un servicio está activo

Verifica si un servicio (como Apache) está en ejecución. Puedes cambiar el nombre del servicio por cualquier otro, como mysqlnginx, etc. Ideal para monitoreo básico de servicios.

#!/bin/bash
SERVICIO="apache2"

if systemctl is-active --quiet $SERVICIO; then
  echo "El servicio $SERVICIO está activo."
else
  echo "El servicio $SERVICIO no está activo."
fi

 Enviar un mensaje de bienvenida al iniciar sesión

Muestra un mensaje personalizado con el nombre del usuario y la fecha actual. Puedes añadir este script al archivo .bashrc para que se ejecute automáticamente al abrir una terminal.

#!/bin/bash
echo "¡Bienvenido, $USER! Hoy es $(date). Que tengas un gran día."

Conclusión

Los scripts en Linux son una herramienta poderosa que todo usuario intermedio o avanzado debería dominar. No solo ahorran tiempo, sino que también permiten mantener sistemas más seguros y eficientes. Si estás comenzando, prueba a automatizar pequeñas tareas diarias y verás cómo tu flujo de trabajo mejora notablemente.

Si tienes dudas, sugerencias o quieres compartir tus propios scripts, ¡nos encantaría leerte!
Déjanos un comentario abajo o escríbenos a través de nuestro formulario de contacto —estamos aquí para ayudarte y seguir aprendiendo juntos.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Scroll al inicio