Técnicas Avanzadas de Scripting Shell

Aprenda Técnicas Avanzadas de Scripting Shell. Este módulo cubre Fundamentos de Funciones Shell, Alcance de Variables y Estado de Retorno, Manejo de Errores con Trap, Técnicas de Manipulación de Cadenas (String Manipulation), Procesamiento de Arrays. Dominará estas habilidades esenciales de Linux a través de laboratorios prácticos y desafíos del mundo real.

DevOps EngineerLinuxDevOps

💡 Este tutorial está traducido por IA desde la versión en inglés. Para ver la versión original, puedes hacer clic aquí

Programa

no data

Introducción

Este curso intermedio amplía los scripts Bash básicos con funciones reutilizables, alcance controlado, limpieza, expansión de parámetros y arrays. En cinco laboratorios guiados organizarás la lógica, separarás salida de texto y estado, responderás a la terminación, manipularás cadenas sin herramientas externas y procesarás colecciones con seguridad.

El desafío final combina esas técnicas en log_manager.sh: mantener un array fijo de registros preparados, derivar nombres .backup en una función, copiar archivos existentes, avisar de objetivos ausentes y eliminar un informe temporal al salir.

Lo que aprenderás

  • Definir y llamar funciones Bash y pasar valores mediante sus argumentos
  • Proteger el estado con variables local en vez de cambiar variables globales accidentalmente
  • Devolver códigos de estado, capturar $? inmediatamente y ramificar según el resultado
  • Registrar funciones de limpieza para SIGINT y EXIT con trap
  • Cortar, sustituir y proporcionar valores predeterminados mediante expansión de parámetros
  • Declarar arrays, añadir elementos, expandir todos los valores e iterar con comillas seguras
  • Derivar nombres de copia sustituyendo .log por .backup dentro de una función
  • Coordinar limpieza, arrays, pruebas de archivo, funciones y avisos en un script ejecutable

A quién va dirigido este curso

Este curso está dirigido a quienes ya dominan los fundamentos de Bash y desean técnicas intermedias para hacer pequeños scripts de mantenimiento más modulares y predecibles.

Requisitos previos: Scripts Bash, variables, argumentos posicionales, condicionales, bucles, pruebas de archivos, códigos de salida, redirección, permisos de ejecución y comandos básicos de archivos.

Entorno de aprendizaje: Una terminal de LabEx basada en Ubuntu con Bash, scripts editables, ejercicios de señales y archivos temporales y tres registros preparados para el desafío.

Preguntas frecuentes

¿Cómo está estructurado el curso?

Cinco laboratorios ofrecen práctica guiada. El sexto elemento es un desafío donde crearás un log_manager.sh que combina trap, función, array, sustitución y bucle.

¿El gestor final comprime, elimina o rota realmente los registros?

No. Copia cada .log preparado a un archivo .backup junto a él y conserva el original. No comprime, aplica retención, trunca ni configura logrotate.

¿Qué eventos manejan los ejercicios de trap?

El laboratorio guiado registra limpieza para SIGINT y EXIT, de modo que Ctrl+C y la salida normal eliminan un temporal. El desafío exige específicamente un trap EXIT que borre report.txt.

¿Puede una función Bash devolver texto mediante return?

No en estos ejercicios. return lleva un estado entero de 0 a 255 para control; el texto se produce con echo o se captura mediante sustitución de comandos.

Profesor

labby
Labby
Labby is the LabEx teacher.