{Le lien de téléchargement a expiré. Veuillez actualiser la page et réessayer.}

Linux - Maîtriser les filtres de commandes

Linux PDF 2 pages 77.43 Ko 844
Linux - Maîtriser les filtres de commandes
PDF 2 p. 77.43 Ko
Télécharger

Lien sécurisé — 5 min

par Thierry Vaira

À propos de ce cours

Sommaire

  • Les expressions rationnelles
  • Grep
  • Sed

Programme du cours

Objectifs d'apprentissage

  • Maîtriser les expressions rationnelles (regex) pour rechercher et manipuler du texte efficacement sous Linux.
  • Utiliser la commande grep pour filtrer des fichiers ou des flux de données selon des motifs complexes.
  • Appliquer la commande sed pour éditer et transformer du texte en flux ou dans des fichiers.
  • Comprendre comment combiner ces outils avec des pipes (|) pour créer des chaînes de traitement puissantes.
  • Automatiser des tâches répétitives de traitement de texte grâce aux filtres Linux.

Public cible

Ce cours s'adresse aux administrateurs système, développeurs, analystes de données ou toute personne travaillant régulièrement avec des environnements Linux. Les utilisateurs intermédiaires souhaitant améliorer leur productivité en ligne de commande tireront particulièrement profit de ce contenu. Une connaissance de base du terminal Linux est recommandée.

Les expressions rationnelles

Les expressions rationnelles (regex) sont un langage puissant pour décrire des motifs dans du texte. Sous Linux, elles sont utilisées par de nombreux outils comme grep, sed, awk et bien d'autres. Ce module couvrira :

  • La syntaxe de base des regex (caractères spéciaux, classes, quantificateurs)
  • Les expressions étendues (ERE) et basiques (BRE)
  • Des exemples pratiques de motifs pour rechercher des adresses email, numéros de téléphone, etc.
  • Les performances et pièges courants à éviter

Grep

grep est l'outil fondamental pour rechercher du texte sous Linux. Nous explorerons :

  • La syntaxe de base : grep motif fichier
  • Les options utiles (-i, -v, -n, -r, -l)
  • L'utilisation avec des regex avancées (-E, -P)
  • Le contexte autour des matches (-A, -B, -C)
  • Des cas d'usage concrets comme analyser des logs ou filtrer des résultats

Un exemple pratique : grep -E "^[A-Za-z]+@[A-Za-z0-9]+\.[a-z]{2,3}$" emails.txt trouvera toutes les adresses email valides dans un fichier.

Sed

sed (Stream EDitor) permet d'effectuer des transformations sophistiquées sur du texte. Ce module abordera :

  • La structure des commandes sed : sed 's/recherche/remplacement/'
  • Les substitutions globales (flag g) et spécifiques
  • L'utilisation des backreferences (&, \1, \2...)
  • La modification de fichiers en place (-i)
  • Les commandes avancées (d pour delete, p pour print, etc.)

Exemple : sed -E 's/([0-9]{2})\/([0-9]{2})\/([0-9]{4})/\3-\2-\1/' dates.txt convertira des dates du format JJ/MM/AAAA en AAAA-MM-JJ.

Combinaison des outils

La véritable puissance de Linux réside dans la combinaison de ces filtres via les pipes. Vous apprendrez à :

  • Chaîner grep, sed et d'autres commandes (commande1 | commande2 | commande3)
  • Réduire progressivement des données complexes vers un format utile
  • Optimiser les performances des pipelines
  • Construire des scripts shell réutilisables

Exemple complet : cat access.log | grep "404" | sed -E 's/.*\[([^]]+)\].*"([^"]+)".*/\1 \2/' | sort | uniq -c produira un compte des URLs ayant généré des erreurs 404, avec leur timestamp.