Temario del curso
Día 1
Módulo 1: Introducción a Python para usuarios de Unix
Temas
Por qué usar Python para scripting y automatización
• ventajas de Python para scripting
• uso de Python en administración de sistemas y DevOps
Comparativa entre Bash y Python
• variables
• flujo de control (if, bucles)
• manejo de archivos
• ejecución de comandos del sistema
Estructura de un script de Python
• ejecución de scripts de Python
• uso del intérprete
• argumentos de línea de comandos
• introducción a argparse
Ejercicios
Ejercicio 1: Conversión de un script simple de Bash a Python
Script de Bash que:
• lista los archivos de un directorio
• filtra por extensión
• muestra estadísticas
Los participantes reescribirán el script en Python.
Ejercicio 2: Script de Python con argumentos de CLI
Creación de un script de Python que:
• recibe parámetros desde la línea de comandos
• procesa archivos
• muestra resultados estructurados
Módulo 2: Manipulación de archivos y directorios
Temas
Trabajo con el sistema de archivos en Python
• lectura y escritura de archivos
• navegación por directorios
• manejo de rutas
Uso del módulo pathlib
• gestión de rutas
• operaciones con archivos
Reemplazo de utilidades de Unix
• grep
• find
• sed
• awk
con implementaciones en Python
Ejercicios
Ejercicio 1: Exploración del sistema de archivos
Script de Python que:
• busca archivos grandes
• identifica archivos antiguos
• genera un informe
Ejercicio 2: Procesamiento de archivos de configuración
Script de Python que:
• lee archivos de texto
• extrae la información relevante
• genera estadísticas
Día 2
Módulo 3: Procesamiento de registros (logs) y manipulación de texto
Temas
Trabajo con texto en Python
• operaciones con cadenas
• filtrado y transformación de datos
Expresiones regulares (regex)
• identificación de patrones
• análisis de registros (log parsing)
Reemplazo de tuberías (pipelines) de shell
Ejemplo:
grep | awk | sed | sort
implementado en Python
Ejercicios
Ejercicio 1: Análisis de archivos de registro (logs)
Script de Python que:
• lee los registros del sistema
• identifica errores
• calcula la frecuencia de errores
Ejercicio 2: Conversión de una tubería de shell a Python
Transformación de una compleja tubería de Bash en un script de Python
Módulo 4: Automatización de comandos del sistema
Temas
Ejecución de comandos de shell desde Python
• módulo subprocess
• captura de salida
• manejo de errores
Automatización de tareas administrativas
• ejecución de comandos del sistema
• integración con trabajos cron
• scripting para tareas repetitivas
Gestión de procesos
• monitoreo de procesos
• ejecución paralela simple
Ejercicios
Ejercicio 1: Script de Python que ejecuta comandos del sistema
Script que:
• ejecuta comandos de Unix
• captura la salida
• genera informes
Ejercicio 2: Monitoreo de servicios
Script de Python que:
• verifica el estado de un servicio
• recopila información
• muestra los resultados
Día 3
Módulo 5: Automatización avanzada e interacción con servicios externos
Temas
Trabajo con APIs en Python
• introducción a solicitudes HTTP
• autenticación y tokens
• procesamiento de respuestas JSON
Python para automatización en DevOps
• recopilación de datos desde servicios externos
• integración con herramientas existentes
• scripting de infraestructura
Ejercicios
Ejercicio 1: Script de Python que consume una API
Script que:
• recopila datos de una API
• procesa la información
• genera un informe
Ejercicio 2: Automatización de la recopilación de datos
Script de Python que:
• recopila información del sistema
• genera un informe en formato JSON o CSV
Módulo 6: Construcción de una herramienta CLI para administración
Temas
Estructuración de un proyecto de Python
• organización del código
• reutilización de funciones
• módulos y paquetes
Creación de una herramienta CLI
• argumentos de línea de comandos
• salida estructurada
• manejo de errores
Ejercicio final
Los participantes construirán una herramienta de automatización CLI en Python que:
• analice archivos de registro (logs)
• identifique errores
• genere estadísticas
• pueda ejecutarse desde la línea de comandos
Resultados del curso
Al finalizar el curso, los participantes serán capaces de:
• transformar scripts de shell en scripts de Python
• usar Python para automatizar tareas del sistema
• procesar registros (logs) y datos complejos
• construir herramientas CLI para la administración de sistemas Unix
Requerimientos
Requisitos previos
- Conocimientos básicos del sistema operativo Unix/Linux
- Familiaridad con el uso de la línea de comandos (shell/Bash)
- Experiencia escribiendo scripts simples de shell (por ejemplo, bucles, condiciones, operaciones con archivos)
- Es beneficioso tener una comprensión general de los conceptos de administración de sistemas
- No se requiere experiencia previa con Python
Público objetivo
- Administradores de sistemas que trabajan en entornos Unix/Linux
- Ingenieros de DevOps que buscan mejorar sus capacidades de automatización
- Ingenieros y especialistas técnicos que utilizan scripting de shell para tareas diarias
- Profesionales de TI interesados en la transición de Bash a Python
- Desarrolladores que trabajan en entornos Unix y desean automatizar sus flujos de trabajo de manera más eficiente
Testimonios (2)
Los ejercicios prácticos relacionados con el contenido realmente ayudan a comprender más sobre cada tema. Además, el estilo de comenzar la clase con una conferencia y continuar con ejercicios prácticos es bueno y útil para relacionarlo con la conferencia presentada anteriormente.
Nazeera Mohamad - Ministry of Science, Technology and Innovation
Curso - Introduction to Data Science and AI using Python
Traducción Automática
Ejemplos/ejercicios perfectamente adaptados a nuestro dominio
Luc - CS Group
Curso - Scaling Data Analysis with Python and Dask
Traducción Automática