sed

Pour éditer et transformer du texte en flux 📝

🖥️ Dans le terminal :

La commande sed (Stream EDitor) permet de modifier du texte de manière automatisée, en utilisant des expressions régulières.

1
2
3
4
sed '' fichier.txt # va juste afficher le contenu, pas d'argument
# un argument de sed c'est une action à faire et les motifs de texte à cibler avec cette action
sed 's/ancien/nouveau/' fichier.txt # Remplace la première occurrence de "ancien" par "nouveau" 
sed '/MotifDebut/,/MotifFin/d' fichier.txt # Supprime le texte contenu entre MotifDebut et MotifFin, motifs inclus

✳️ Actions principales de sed sur le flux :

  • s : Substitution
  • i : Insertion avant la ligne courante
  • a : Ajoute du texte après la ligne courante
  • y : Echange de caractères
  • p : affiche les lignes correspondant à un motif
  • r : Lit le contenu et l’insère dans le flux de sortie
  • w : écrit les lignes correspondant au motif dans le fichier

✳️ Options principales de l’éditeur sed:

  • -i : Modifie le fichier directement (in-place)
  • -e : Permet d’exécuter plusieurs commandes
  • -n : Supprime l’affichage automatique, utile avec l’action ‘p
  • -r ou -E : Utilise les expressions régulières étendues
1
2
3
sed -i 's/ancien/nouveau/g' fichier.txt # Remplace TOUTES les occurrences dans le fichier

sed '1d' fichier.txt # Supprime la première ligne du fichier

☸️ Commandes : souvent utilisée dans des pipelines avec grep, awk, etc.

🧺 Doc & ressources

officielle : Utilisez man sed pour plus d’informations dans votre terminal.