Want to create interactive content? It’s easy in Genially!

Get started free

PR.AD.04.04.01 Scripts de automatización básica y automatización

UTL

Created on September 25, 2025

Start designing with a free template

Discover more than 1500 professional designs like these:

Transcript

Programación de redes

Scripts de automatización básica y automatización

AD.04.04.01 – Scripts de automatización básica y automatización

Índice

• Introducción

• Automatización con PowerShell

• Objetivo

• Automatización con Bash

• Concepto de scripting

• Estructura de un script profesional

• Scripts interactivos con entrada del usuario

• Tipos de scripts

• Manejo de errores y excepciones

• Beneficios de la automatización

• Uso de APIs en la automatización

• Lenguajes más usados para scripting

• Automatización de monitoreo de red y servicios

• Variables y estructuras básicas

• Logs y reportes automáticos

• Condicionales en scripting

• Integración con herramientas de red (Ansible, Netmiko, NAPALM)

• Bucles y repeticiones automáticas

• Buenas prácticas en scripting

• Funciones y modularidad

• Seguridad en la automatización

• Automatización de tareas del sistema

• Escalabilidad de scripts y paralelización

• Automatización en redes

• Depuración y pruebas de scripts

• Automatización de tareas repetitivas

• Conclusión

• Ejecución automática programada (cron / Task Scheduler)

• Fuentes bibliográficas

• Automatización con Python y archivos

Introducción

La automatización es el proceso de ejecutar tareas sin intervención manual, mediante el uso de scripts o programas. En el ámbito de redes y sistemas, permite optimizar tiempos, reducir errores y estandarizar procesos repetitivos. Los scripts de automatización son instrucciones escritas en lenguajes como Python, Bash o PowerShell, que ejecutan secuencias específicas: configuración, monitoreo o despliegue.

Objetivo

El estudiante comprenderá los fundamentos teóricos y prácticos para diseñar, escribir y ejecutar scripts de automatización básica, aplicando buenas prácticas de desarrollo y seguridad. Será capaz de crear scripts funcionales en distintos entornos para tareas de red, sistema o monitoreo.

Concepto de scripting

Un script es una secuencia de instrucciones que un sistema interpreta y ejecuta automáticamente. Se diferencia de los programas compilados porque no necesita un proceso de compilación: se ejecuta directamente por un intérprete (Python, Bash, PowerShell).

Ejemplo práctico:

Tipos de scripts

Un script es una secuencia de instrucciones que un sistema interpreta y ejecuta automáticamente. Se diferencia de los programas compilados porque no necesita un proceso de compilación: se ejecuta directamente por un intérprete (Python, Bash, PowerShell).

Scripts de shell (Bash): automatizan tareas del sistema operativo.

Scripts en Python: orientados a automatización avanzada y APIs.

Scripts en PowerShell: usados en entornos Windows.

Scripts híbridos: integran múltiples herramientas (por ejemplo, Python + Ansible).

Ejemplo práctico:

Mostrar un script corto en PowerShell para listar procesos:

Get-Process | Select-Object Name, CPU

Beneficios de la automatización

Ejemplo práctico:

Ahorro de tiempo.

Disminución de errores humanos.

Un script Python que genera automáticamente reportes de logs.

Consistencia en configuraciones.

Escalabilidad.

Repetibilidad.

Lenguajes más usados para scripting

Python: versátil y con librerías extensas.

Bash: ideal para sistemas Linux.

PowerShell: para entornos Windows.

Los lenguajes más comunes en automatización son:

Perl y Ruby: aún usados en entornos legacy.

Ejemplo práctico:

print("Automatizando con Python...")

Variables y estructuras básicas

Ejemplo práctico:

Las variables almacenan datos que el script puede reutilizar. Permiten crear programas dinámicos.

Condicionales

Ejemplo visual:

Permiten tomar decisiones en el flujo del script (if/else). Ejemplo: if ping -c 1 8.8.8.8 > /dev/null; then echo "Red activa" else echo "Red inactiva" fi

Bucles

Ejemplo visual:

Los bucles repiten acciones múltiples veces (for, while). Ejemplo práctico: for i in range(3): print("Intentando conexión...")

Funciones

Ejemplo visual:

Permiten dividir el código en bloques reutilizables. Ejemplo práctico: def saludar(): print("Automatización iniciada.") saludar()

Automatización de tareas del sistema

Ejemplo visual:

Los scripts pueden ejecutar comandos del sistema operativo, modificar archivos, crear logs y realizar copias de seguridad. Ejemplo práctico: tar -czvf respaldo.tar.gz /etc

Automatización de tareas repetitivas

Ejemplo visual:

Ideal para tareas que se ejecutan frecuentemente, como limpieza de archivos temporales o generación de reportes. Ejemplo práctico: find /tmp -type f -mtime +7 -delete.

Ejecución automática programada

En Linux se usa cron y en Windows el Task Scheduler para programar scripts. Ejemplo práctico: crontab -e 0 8 * * * /home/admin/backup.sh

Automatización con Python y archivos

Python puede leer y escribir archivos automáticamente. Ejemplo práctico: with open("registro.txt", "a") as log: log.write("Ejecución completada.\n")

Automatización con PowerShell

PowerShell permite manipular procesos, servicios y redes. Ejemplo práctico: Get-Service | Where-Object {$_.Status -eq "Running"}

Automatización con Bash

En Linux, Bash ejecuta comandos del sistema de forma secuencial o condicional. Ejemplo práctico: df -h > reporte_disco.txt

Estructura de un script profesional

Un script debe incluir:

  • Comentarios.
  • Variables configurables.
  • Validaciones.
  • Registro de actividad (logs).
Ejemplo práctico: #!/bin/bash # Script de respaldo fecha=$(date) echo "Respaldo iniciado: $fecha" >> backup.log

Scripts interactivos

Los scripts pueden solicitar datos al usuario. Ejemplo práctico: nombre = input("Ingrese su nombre: ") print(f"Hola, {nombre}, la automatización ha comenzado.")

Manejo de errores

Agregar manejo de excepciones mejora la estabilidad del script. Ejemplo práctico: try: archivo = open("config.txt") except FileNotFoundError: print("Error: archivo no encontrado.")

Uso de APIs en automatización

Las APIs permiten controlar aplicaciones o servicios externos desde scripts. Ejemplo práctico: import requests r = requests.get("https://api.ipify.org?format=json") print(r.json())

Uso de APIs en automatización

Las APIs permiten controlar aplicaciones o servicios externos desde scripts. Ejemplo práctico: import requests r = requests.get("https://api.ipify.org?format=json") print(r.json())

Automatización de monitoreo

Scripts pueden verificar disponibilidad de servicios y generar alertas. Ejemplo práctico: ping -c 1 8.8.8.8 && echo "Conectado" || echo "Error de conexión".

Logs y reportes automáticos

Registrar las acciones y resultados de un script permite auditar su comportamiento. Ejemplo práctico: import datetime log = open("actividad.log", "a") log.write(f"{datetime.datetime.now()} - Tarea completada\n")

Integración con herramientas de red

Los scripts se pueden integrar con herramientas como Ansible, Netmiko o NAPALM para ejecutar configuraciones masivas. Ejemplo práctico: os.system("ansible-playbook redes.yaml")

Buenas prácticas en scripting

  • Nombrar variables descriptivas.
  • Usar control de versiones (Git).
  • Probar scripts antes de producción.
  • Documentar código.
Ejemplo práctico: Mostrar estructura de un repositorio Git con scripts documentados.

Seguridad en automatización

Evitar credenciales en texto plano, cifrar archivos sensibles y usar roles con privilegios mínimos. Ejemplo práctico: ansible-vault encrypt variables.yml

Escalabilidad de scripts

Un script escalable puede ampliarse fácilmente o ejecutarse en paralelo. Ejemplo práctico: from multiprocessing import Pool

Depuración y pruebas

Antes del despliegue, se deben probar los scripts para detectar errores. Herramientas: pytest, bash -x, Write-Debug. Ejemplo práctico: bash -x script.sh

Conclusión

Los scripts de automatización representan la base de la ingeniería moderna de infraestructura. Permiten ejecutar tareas complejas con precisión y agilidad, integrando múltiples tecnologías bajo un mismo flujo. El profesional debe dominar la lógica, seguridad y mantenimiento del código automatizado.

REFERENCIAS

  • • Cisco Systems (2023). Network Automation with Python and Ansible.
  • • Red Hat (2022). Ansible Automation Platform Documentation.
  • • Bash Manual (GNU). Bash Reference Guide.
  • • Microsoft Docs. Windows PowerShell Automation.
  • • Lutz, M. (2022). Learning Python (5th Ed.) – O’Reilly Media.

Creación de contenido.

  • Sergio Velazquez Bonilla - Universidad Tecnológica del Centro de Veracruz

Revisión de contenido.

  • Eva María Landa Huerta - Universidad Tecnológica del Centro de Veracruz

Diseño instruccional.

  • Ricardo Castro Valdivia - Universidad Tecnológica del Centro de Veracruz

Diseño gráfico y multimedia.

  • Miguel Hernández Romero - Universidad Tecnológica del Centro de Veracruz