Plan du cours
Jour 1
Module 1 : Introduction à Python pour les utilisateurs Unix
Sujets
Pourquoi utiliser Python pour le scriptage et l'automatisation
• avantages de Python pour le scriptage
• utilisation de Python dans l'administration système et DevOps
Comparaison Bash vs Python
• variables
• contrôle du flux (si, boucles)
• travail avec des fichiers
• exécution de commandes système
Structure d'un script Python
• exécution de scripts Python
• utilisation de l'interprèteur
• arguments en ligne de commande
• introduction à argparse
Exercices
Exercice 1 – Conversion d'un script Bash simple en Python
Script Bash qui :
• liste les fichiers d'un répertoire
• filtre par extension
• affiche des statistiques
Les participants réécriront le script en Python.
Exercice 2 – Script Python avec arguments CLI
Création d'un script Python qui :
• reçoit des paramètres de la ligne de commande
• traite des fichiers
• affiche des résultats structurés
Module 2 : Manipulation des fichiers et des répertoires
Sujets
Travail avec le système de fichiers en Python
• lecture et écriture de fichiers
• navigation dans les répertoires
• gestion des chemins d'accès
Utilisation du module pathlib
• gestion des chemins
• opérations sur les fichiers
Remplacement des utilitaires Unix
• grep
• find
• sed
• awk
par des implémentations Python
Exercices
Exercice 1 – Analyse du système de fichiers
Script Python qui :
• recherche des fichiers volumineux
• identifie les fichiers anciens
• génère un rapport
Exercice 2 – Traitement des fichiers de configuration
Script Python qui :
• lit des fichiers texte
• extrait les informations pertinentes
• génère des statistiques
Jour 2
Module 3 : Traitement des journaux et manipulation de texte
Sujets
Travail avec le texte en Python
• opérations sur les chaînes de caractères
• filtrage et transformation des données
Expressions régulières (regex)
• identification de motifs
• analyse des journaux
Remplacement des tuyaux shell
Exemple :
grep | awk | sed | sort
mis en œuvre en Python
Exercices
Exercice 1 – Analyse de fichiers journaux
Script Python qui :
• lit les journaux système
• identifie les erreurs
• calcule la fréquence des erreurs
Exercice 2 – Conversion d'un tuyau shell en Python
Pipeline Bash complexe transformé en script Python
Module 4 : Automatisation des commandes système
Sujets
Exécution de commandes shell depuis Python
• module subprocess
• capture de la sortie
• gestion des erreurs
Automatisation des tâches administratives
• exécution de commandes système
• intégration avec les tâches cron
• scriptage pour les tâches répétitives
Gestion des processus
• surveillance des processus
• exécution parallèle simple
Exercices
Exercice 1 – Script Python exécutant des commandes système
Script qui :
• exécute des commandes Unix
• capture la sortie
• génère des rapports
Exercice 2 – Surveillance des services
Script Python qui :
• vérifie l'état d'un service
• recueille des informations
• affiche les résultats
Jour 3
Module 5 : Automatisation avancée et interaction avec des services externes
Sujets
Travail avec les API en Python
• introduction aux requêtes HTTP
• authentification et jetons
• traitement des réponses JSON
Python pour l'automatisation DevOps
• collecte de données depuis des services externes
• intégration avec les outils existants
• scriptage de l'infrastructure
Exercices
Exercice 1 – Script Python consommant une API
Script qui :
• collecte des données depuis une API
• traite les informations
• génère un rapport
Exercice 2 – Automatisation de la collecte de données
Script Python qui :
• collecte des informations système
• génère un rapport JSON ou CSV
Module 6 : Création d'un outil CLI pour l'administration
Sujets
Structuration d'un projet Python
• organisation du code
• réutilisation des fonctions
• modules et paquets
Création d'un outil CLI
• arguments en ligne de commande
• sortie structurée
• gestion des erreurs
Exercice final
Les participants construiront un outil d'automatisation CLI en Python qui :
• analyse les fichiers journaux
• identifie les erreurs
• génère des statistiques
• peut être exécuté depuis la ligne de commande
Résultats du cours
À la fin du cours, les participants seront capables de :
• transformer des scripts shell en scripts Python
• utiliser Python pour automatiser des tâches système
• traiter les journaux et les données complexes
• construire des outils CLI pour l'administration des systèmes Unix
Pré requis
Prérequis
- Connaissances de base des systèmes d'exploitation Unix/Linux
- Familiarité avec l'utilisation de la ligne de commande (shell/Bash)
- Expérience dans l'écriture de scripts shell simples (par exemple, boucles, conditions, opérations sur les fichiers)
- Une compréhension générale des concepts d'administration système est un atout
- Aucune expérience préalable de Python n'est requise
Audience cible
- Administrateurs systèmes travaillant dans des environnements Unix/Linux
- Ingénieurs DevOps souhaitant améliorer leurs capacités d'automatisation
- Ingénieurs et spécialistes techniques utilisant le scriptage shell pour les tâches quotidiennes
- Professionnels de l'informatique intéressés par le passage de Bash à Python
- Développeurs travaillant dans des environnements Unix qui souhaitent automatiser leurs flux de travail plus efficacement
Nos clients témoignent (2)
L'adaptation des exos à notre contexte et la prise en compte de notre demande
Amel Guetat - EURO-INFORMATION DEVELOPPEMENTS
Formation - Fraud Detection with Python and TensorFlow
Les exercices pratiques liés au contenu aident vraiment à mieux comprendre chaque sujet. De plus, le fait de commencer les cours par une leçon puis de continuer avec des exercices pratiques est une bonne méthode qui aide à relier le contenu de la leçon précédente.
Nazeera Mohamad - Ministry of Science, Technology and Innovation
Formation - Introduction to Data Science and AI using Python
Traduction automatique