Aller au contenu
Administration Linux medium

sed : transformer du texte à la volée

24 min de lecture

Quand on doit modifier rapidement le contenu de plusieurs fichiers, effectuer des remplacements massifs ou supprimer certaines lignes en fonction d'un motif, sed est l'outil incontournable. Conçu pour l'édition de flux, sed permet de rechercher, remplacer, supprimer ou insérer du texte directement en ligne de commande, sans ouvrir les fichiers manuellement.

  • Remplacer du texte avec la commande s/ancien/nouveau/
  • Supprimer, insérer et modifier des lignes ciblées
  • Utiliser des adresses (numéros de ligne, motifs) pour cibler précisément
  • Éditer des fichiers en place avec -i (en sécurité)

sed fait partie des commandes de traitement de texte sous Linux. Chaque outil a sa spécialité :

CommandeSpécialitéQuand l'utiliser
sedÉditer du texte en fluxRemplacer, supprimer, insérer du texte
grepRechercher des patternsFiltrer les lignes matchant un motif
awkTraiter des données tabulairesExtraire/transformer des colonnes
trTranslitérer des caractèresRemplacer caractère par caractère
cutExtraire des colonnesDécouper par délimiteur ou position
findRechercher des fichiersTrouver des fichiers par attributs

Combinaisons fréquentes :

Fenêtre de terminal
# grep + sed : filtrer puis transformer
grep "ERROR" log.txt | sed 's/ERROR/ALERTE/g'
# sed + awk : modifier puis extraire
sed 's/;/,/g' data.csv | awk -F',' '{print $2}'
# find + sed : modifier plusieurs fichiers
find . -name "*.conf" -exec sed -i 's/old/new/g' {} +

🧠 Modèle mental — Comment fonctionne sed

sed = Lire ligne → Appliquer commandes → Afficher résultat

Modèle mental sed : Entrée (fichier/stdin) → Commande (s/ancien/nouveau/g) → Sortie (stdout ou fichier avec -i)

Points clés

  • sed lit le fichier ligne par ligne (flux, pas tout en mémoire)
  • Chaque ligne passe par les commandes dans l'ordre
  • Par défaut, sed affiche le résultat sur stdout (pas de modification du fichier)
  • La commande s/ancien/nouveau/ remplace du texte
  • Sans flag g, seule la première occurrence par ligne est remplacée
  • Avec -i, sed modifie directement le fichier (danger !)

Règles d'or

1
Tester sans -i avant d'éditer en place Prévisualiser les changements avec sed '...' fichier avant sed -i '...' fichier
2
Utiliser un délimiteur adapté au contenu Si le texte contient des /, utiliser # ou @ comme délimiteur : s#/chemin#/autre#

Vocabulaire essentiel

s/old/new/
Substitution : remplace old par new (1ère occurrence)
s/old/new/g
Substitution globale (toutes les occurrences)
d
Delete : supprime la ligne
p
Print : affiche la ligne
-i
In-place : modifie le fichier directement
-n
No-print : n'affiche rien sauf avec p
📚 Pour aller plus loin — 12 options avancées
a\texte
Append : ajoute après la ligne
i\texte
Insert : insère avant la ligne
c\texte
Change : remplace toute la ligne
/regex/
Adresse : cible les lignes matchant regex
1,10
Plage : lignes 1 à 10
/début/,/fin/
Plage entre deux patterns
-E
Extended regex (ERE) : +, ?, |, () sans escape
&
Dans s///, représente le texte matché
\1, \2
Backreferences : groupes capturés
y/abc/xyz/
Translitération (comme tr)
q
Quit : arrête le traitement
N
Next : ajoute la ligne suivante au buffer

sed lit le fichier ligne par ligne (flux), applique les transformations demandées, puis affiche le résultat. Par défaut, le fichier original n'est pas modifié.

Fenêtre de terminal
sed [OPTIONS] 'COMMANDE' [FICHIER]

La commande sed suit une logique simple :

ÉtapeQuestionExemplesObligatoire ?
EntréeD'où vient le texte ?fichier.txt, stdin (pipe)⚠️ Un des deux
CommandeQuelle transformation ?s/old/new/g, d, p✅ Oui
SortieOù va le résultat ?stdout (défaut) ou fichier (-i)❌ Non (défaut : stdout)

La commande la plus utilisée est s (substitution) :

Fenêtre de terminal
sed 's/ancien/nouveau/' fichier.txt
ÉlémentSignification
sCommande de substitution
/Délimiteur (peut être #, @, |)
ancienTexte ou regex à rechercher
nouveauTexte de remplacement

Par défaut, seule la première occurrence par ligne est remplacée. Pour remplacer toutes les occurrences, ajoutez le flag g :

Fenêtre de terminal
sed 's/foo/bar/g' fichier.txt
CommandeEffetExemple
dSupprime la ligne/debug/d
pAffiche la ligne-n '/error/p'
i\texteInsère avant la ligne1i\# En-tête
a\texteAjoute après la ligne$a\# Fin
c\texteRemplace la ligne entière3c\Nouvelle ligne
qQuitte après cette ligne10q

Par défaut, sed applique la commande à toutes les lignes. On peut cibler avec des adresses :

AdresseCe qu'elle cibleExemple
5Ligne numéro 5sed '5d' f.txt
$Dernière lignesed '$d' f.txt
/pattern/Lignes contenant "pattern"sed '/error/d' f.txt
1,10Lignes 1 à 10sed '1,10d' f.txt
/début/,/fin/Plage entre deux patternssed '/BEGIN/,/END/d' f.txt
FlagEffetExemple
gGlobal (toutes occurrences)s/a/b/g
iInsensible à la casses/error/warning/gi
pAffiche si substitution faite-n 's/a/b/p'
2Remplace la 2ème occurrences/a/b/2

Quand le texte contient des /, utilisez un autre délimiteur :

Fenêtre de terminal
# ❌ Illisible et source d'erreurs
sed 's/\/var\/log/\/opt\/logs/g' fichier.txt
# ✅ Beaucoup plus clair avec #
sed 's#/var/log#/opt/logs#g' fichier.txt

Par défaut, sed affiche le résultat sur stdout sans modifier le fichier. Pour modifier directement :

Fenêtre de terminal
# ⚠️ Modifie le fichier (DANGER si erreur)
sed -i 's/old/new/g' fichier.txt
# ✅ Crée un backup avant modification
sed -i.bak 's/old/new/g' fichier.txt

Règle d'or : toujours tester sans -i d'abord !

Fenêtre de terminal
# 1. Tester
sed 's/old/new/g' fichier.txt
# 2. Vérifier le résultat, puis seulement :
sed -i.bak 's/old/new/g' fichier.txt
ErreurCauseSolution
Seule la 1ère occurrence est remplacéeOubli du flag gAjouter g : s/old/new/g
Erreur de syntaxe avec des chemins/ dans le texteUtiliser # comme délimiteur
Fichier modifié par erreur-i sans test préalableToujours tester sans -i d'abord
Rien ne se passePas de match (casse ?)Vérifier avec grep ou utiliser i (insensible)

Maintenant que vous comprenez la logique de sed, voici seize modèles prêts à l'emploi. Chacun donne sa formule générale et un exemple concret.

Remplacer la première occurrence d'un texte sur chaque ligne.

Fenêtre de terminal
sed 's/ancien/nouveau/' <fichier> # formule
sed 's/erreur/warning/' log.txt # exemple
  • ancien : texte ou regex à rechercher
  • nouveau : texte de remplacement

Remplacer toutes les occurrences sur chaque ligne.

Fenêtre de terminal
sed 's/ancien/nouveau/g' <fichier> # formule
sed 's/foo/bar/g' fichier.txt # exemple
  • g : flag global — toutes les occurrences de la ligne

Remplacer un texte quelle que soit la casse.

Fenêtre de terminal
sed 's/ancien/nouveau/gi' <fichier> # formule
sed 's/error/warning/gi' log.txt # exemple
  • i : flag insensible à la casse (GNU sed)

Éviter les échappements quand le texte contient des /.

Fenêtre de terminal
sed 's#ancien#nouveau#g' <fichier> # formule
sed 's#/var/log#/opt/logs#g' paths.txt # exemple
  • # : délimiteur alternatif (#, @, etc.) à la place de /

Supprimer les lignes contenant un motif.

Fenêtre de terminal
sed '/motif/d' <fichier> # formule
sed '/DEBUG/d' log.txt # exemple
  • motif : pattern regex à reconnaître
  • d : commande delete

Nettoyer un fichier en retirant les lignes vides.

Fenêtre de terminal
sed '/^$/d' <fichier> # formule
sed '/^$/d' texte.txt # exemple
  • ^$ : regex d'une ligne vide (début = fin)

Appliquer une commande uniquement sur une ligne précise.

Fenêtre de terminal
sed 'N<commande>' <fichier> # formule
sed '5d' fichier.txt # exemple : supprime la ligne 5
  • N : numéro de ligne ciblé

Appliquer une commande sur un ensemble de lignes.

Fenêtre de terminal
sed 'N,M<commande>' <fichier> # formule
sed '2,5d' fichier.txt # exemple : supprime les lignes 2 à 5
  • N,M : de la ligne N à la ligne M incluses

Cibler les lignes situées entre deux patterns.

Fenêtre de terminal
sed '/début/,/fin/<commande>' <fichier> # formule
sed '/BEGIN/,/END/d' fichier.txt # exemple
  • /début/,/fin/ : plage délimitée par deux motifs

Modifier directement le fichier.

Fenêtre de terminal
sed -i '<commande>' <fichier> # formule
sed -i 's/old/new/g' config.conf # exemple
  • -i : in-place — modifie le fichier. Toujours tester sans -i d'abord.

Modifier un fichier en conservant une copie de secours.

Fenêtre de terminal
sed -i.bak '<commande>' <fichier> # formule
sed -i.bak 's/old/new/g' config.conf # exemple
  • -i.bak : crée fichier.bak avant de modifier

Ajouter du texte avant une ligne.

Fenêtre de terminal
sed '<adresse>i\<texte>' <fichier> # formule
sed '1i\# En-tête ajouté' fichier.txt # exemple
  • i\ : commande insert — ajoute avant la ligne ciblée

Ajouter du texte après une ligne.

Fenêtre de terminal
sed '<adresse>a\<texte>' <fichier> # formule
sed '/END/a\# Commentaire' fichier.txt # exemple
  • a\ : commande append — ajoute après la ligne ciblée

Extraire les lignes d'un motif, comme grep.

Fenêtre de terminal
sed -n '/motif/p' <fichier> # formule
sed -n '/ERROR/p' log.txt # exemple
  • -n : désactive l'affichage automatique
  • p : commande print — affiche la ligne

Réutiliser une partie capturée dans le remplacement.

Fenêtre de terminal
sed 's/\(motif\)/\1 ajout/' <fichier> # formule
sed 's/\([0-9]*\)/ID:\1/' fichier.txt # exemple
  • \(\) : groupe de capture
  • \1 : référence au premier groupe capturé

Insérer le texte reconnu dans le remplacement.

Fenêtre de terminal
sed 's/motif/[&]/g' <fichier> # formule
sed 's/[0-9]\+/(&)/g' fichier.txt # exemple
  • & : représente l'intégralité du texte reconnu

Sept erreurs reviennent constamment avec sed. Pour chacune : la commande piégée, le symptôme, la cause et la correction.

Fenêtre de terminal
sed 's/foo/bar/' fichier.txt # ❌ ne remplace que la 1ʳᵉ occurrence par ligne

Symptôme : certaines occurrences ne sont pas remplacées. Cause : sans g, sed ne touche que la première occurrence de chaque ligne.

Fenêtre de terminal
sed 's/foo/bar/g' fichier.txt # ✅ flag global
Fenêtre de terminal
sed 's//var/log//opt/logs/' fichier.txt # ❌ erreur de syntaxe

Symptôme : erreur unknown command ou résultat inattendu. Cause : les / du texte sont pris pour des délimiteurs.

Fenêtre de terminal
sed 's#/var/log#/opt/logs#g' fichier.txt # ✅ délimiteur alternatif
Fenêtre de terminal
sed -i 's/important/supprimé/g' fichier.conf # ❌ exécuté sans test

Symptôme : données perdues, fichier corrompu. Cause : -i modifie le fichier sans retour arrière possible.

Fenêtre de terminal
sed 's/old/new/g' fichier # ✅ tester d'abord, puis sed -i.bak
Fenêtre de terminal
sed 's/fichier.txt/fichier.log/' fichier # ❌ le . matche n'importe quel caractère

Symptôme : des correspondances inattendues (fichierXtxt est aussi reconnu). Cause : le point . est un métacaractère regex.

Fenêtre de terminal
sed 's/fichier\.txt/fichier.log/g' fichier # ✅ point échappé
Fenêtre de terminal
sed -i 's/old/new/' fichier # ❌ échoue sur macOS (BSD sed)

Symptôme : erreur invalid command code sur macOS. Cause : BSD sed exige une extension après -i, même vide.

Fenêtre de terminal
sed -i '' 's/old/new/' fichier # ✅ sur macOS — ou installer GNU sed
Fenêtre de terminal
sed 's/$/\n/' fichier # ❌ insère un \n littéral, pas un vrai saut de ligne

Symptôme : un \n littéral apparaît au lieu d'un retour à la ligne. Cause : la syntaxe \n n'est pas portable dans la partie remplacement.

Fenêtre de terminal
sed 's/$/\'$'\n''/' fichier # ✅ en bash, via $'\n'
Fenêtre de terminal
sed 's/<.*>//g' fichier # ❌ supprime du premier < au dernier >

Symptôme : <a>texte<b> devient vide au lieu de texte. Cause : .* est gourmand — il reconnaît le maximum possible.

Fenêtre de terminal
sed 's/<[^>]*>//g' fichier # ✅ classe négative : s'arrête au premier >

Rien ne remplace la pratique. Créez l'environnement de test ci-dessous, puis déroulez les huit étapes. À la fin, nettoyez avec rm -rf ~/sed-lab.

Ce script crée cinq fichiers de test dans ~/sed-lab : une configuration, un log, un CSV, une liste de chemins et un fichier « brouillon » à nettoyer.

Fenêtre de terminal
# Créer le lab
mkdir -p ~/sed-lab
cd ~/sed-lab
# Fichier de configuration type
cat > config.conf << 'EOF'
# Configuration serveur
server_host=localhost
server_port=8080
debug_mode=true
log_level=INFO
database_url=postgres://localhost:5432/mydb
max_connections=100
EOF
# Fichier de logs
cat > access.log << 'EOF'
192.168.1.10 - - [15/Jan/2025:10:30:00] "GET /index.html HTTP/1.1" 200 1234
192.168.1.20 - - [15/Jan/2025:10:30:05] "POST /api/users HTTP/1.1" 201 567
192.168.1.10 - - [15/Jan/2025:10:30:10] "GET /style.css HTTP/1.1" 200 890
192.168.1.30 - - [15/Jan/2025:10:30:15] "GET /error HTTP/1.1" 404 123
192.168.1.10 - - [15/Jan/2025:10:30:20] "DELETE /api/users/5 HTTP/1.1" 403 45
EOF
# Fichier CSV
cat > users.csv << 'EOF'
id,nom,email,role
1,Alice,alice@example.com,admin
2,Bob,bob@example.com,user
3,Charlie,charlie@example.com,user
4,Diana,diana@example.com,moderator
EOF
# Fichier avec chemins
cat > paths.txt << 'EOF'
/var/log/syslog
/home/user/documents/report.pdf
/etc/nginx/nginx.conf
/usr/local/bin/script.sh
EOF
# Fichier à nettoyer
cat > messy.txt << 'EOF'
Ligne avec espaces au début
Ligne normale
Autre ligne avec espaces
Ligne vide après
Encore du texte
Espaces partout
EOF
echo "✅ Lab créé dans ~/sed-lab"
ls -la ~/sed-lab
  1. Substitution simple. Remplacez localhost par 127.0.0.1 dans config.conf.

    Fenêtre de terminal
    sed 's/localhost/127.0.0.1/' ~/sed-lab/config.conf

    s/ancien/nouveau/ remplace la première occurrence sur chaque ligne. Pour toutes les occurrences : ajoutez le flag g.

  2. Délimiteur alternatif. Remplacez /var/log par /opt/logs dans paths.txt.

    Fenêtre de terminal
    sed 's#/var/log#/opt/logs#' ~/sed-lab/paths.txt

    Quand le texte contient des /, on utilise un autre délimiteur (# ici).

  3. Supprimer des lignes. Supprimez les lignes contenant 404 dans access.log.

    Fenêtre de terminal
    sed '/404/d' ~/sed-lab/access.log

    /motif/d supprime les lignes qui contiennent le motif.

  4. Supprimer les lignes vides. Retirez les lignes vides de messy.txt.

    Fenêtre de terminal
    sed '/^$/d' ~/sed-lab/messy.txt

    ^$ reconnaît une ligne vide (début immédiatement suivi de la fin).

  5. Cibler une ligne par numéro. Remplacez user par admin uniquement sur la ligne 3 de users.csv.

    Fenêtre de terminal
    sed '3s/user/admin/' ~/sed-lab/users.csv

    Le numéro placé avant la commande la restreint à cette ligne.

  6. Plage de lignes. Remplacez @example.com par @company.org sur les lignes 2 à 4 de users.csv.

    Fenêtre de terminal
    sed '2,4s/@example.com/@company.org/' ~/sed-lab/users.csv

    N,M cible les lignes de N à M incluses.

  7. Édition en place avec sauvegarde. Modifiez config.conf en remplaçant true par false, en gardant une sauvegarde.

    Fenêtre de terminal
    sed -i.bak 's/true/false/' ~/sed-lab/config.conf

    -i.bak modifie le fichier et crée config.conf.bak au préalable.

  8. Supprimer les espaces en début de ligne. Retirez les espaces au début de chaque ligne de messy.txt.

    Fenêtre de terminal
    sed 's/^[[:space:]]*//' ~/sed-lab/messy.txt

    ^[[:space:]]* reconnaît zéro espace ou plus en début de ligne.

Huit exercices pour valider votre maîtrise. Tous se traitent sur les fichiers du lab ~/sed-lab. Cherchez d'abord par vous-même, puis dépliez la solution pour vous corriger.

Exercice 1 — Substitution basique. Remplacez tous les error par warning dans access.log. Indice : n'oubliez pas le flag g.

Voir la solution
Fenêtre de terminal
sed 's/error/warning/g' ~/sed-lab/access.log

Le flag g remplace toutes les occurrences, pas seulement la première de chaque ligne.

Exercice 2 — Remplacer des chemins. Remplacez /usr/local par /opt dans paths.txt. Indice : les / du texte gênent le délimiteur par défaut.

Voir la solution
Fenêtre de terminal
sed 's#/usr/local#/opt#g' ~/sed-lab/paths.txt

On utilise # comme délimiteur pour éviter d'échapper les /.

Exercice 3 — Supprimer les commentaires. Supprimez toutes les lignes commençant par # dans config.conf. Indice : ^ représente le début de ligne, d supprime.

Voir la solution
Fenêtre de terminal
sed '/^#/d' ~/sed-lab/config.conf

/^#/ reconnaît les lignes commençant par # ; d les supprime.

Exercice 4 — Nettoyer les espaces. Supprimez les espaces en fin de ligne de messy.txt. Indice : [[:space:]] reconnaît les espaces, $ la fin de ligne.

Voir la solution
Fenêtre de terminal
sed 's/[[:space:]]*$//' ~/sed-lab/messy.txt

[[:space:]]*$ reconnaît zéro espace ou plus juste avant la fin de ligne.

Exercice 5 — Modifier une ligne précise. Changez le contenu entier de la ligne 3 de users.csv en MODIFIÉ. Indice : c\ remplace toute une ligne.

Voir la solution
Fenêtre de terminal
sed '3c\MODIFIÉ' ~/sed-lab/users.csv

3c\ cible la ligne 3 ; c\ remplace son contenu entier.

Exercice 6 — Extraire des lignes (comme grep). Affichez uniquement les lignes d'access.log contenant 404. Indice : -n désactive l'affichage auto, p affiche les lignes reconnues.

Voir la solution
Fenêtre de terminal
sed -n '/404/p' ~/sed-lab/access.log

-n coupe l'affichage par défaut ; /404/p n'affiche que les lignes correspondantes.

Exercice 7 — Ajouter un préfixe à chaque ligne. Ajoutez LOG: au début de chaque ligne d'access.log. Indice : ^ reconnaît le début de ligne.

Voir la solution
Fenêtre de terminal
sed 's/^/LOG: /' ~/sed-lab/access.log

s/^/LOG: / remplace le « début de ligne » par LOG: — donc préfixe chaque ligne.

Exercice 8 — Édition en place sécurisée. Remplacez localhost par 127.0.0.1 dans config.conf en conservant une sauvegarde. Indice : -i.bak crée la sauvegarde automatiquement.

Voir la solution
Fenêtre de terminal
sed -i.bak 's/localhost/127.0.0.1/g' ~/sed-lab/config.conf

-i.bak modifie le fichier en place et crée config.conf.bak comme filet de sécurité.

Quand une substitution sed ne fonctionne pas, le problème vient le plus souvent du motif ou des délimiteurs. Voici comment diagnostiquer.

Fenêtre de terminal
# Toujours prévisualiser avant d'utiliser -i
sed 's/old/new/g' fichier
# Voir quelles lignes sont reconnues par un motif
sed -n '/pattern/p' fichier
# Afficher les numéros des lignes reconnues
sed -n '/pattern/=' fichier
# Valider le motif isolément avec grep
grep 'pattern' fichier
Message d'erreurCause probableSolution
unterminated 's' commandDélimiteur de fermeture manquant, ou / non échappé dans le texteS'assurer d'avoir exactement 3 délimiteurs : s/ancien/nouveau/
unknown option -- EOption non supportée (BSD sed contre GNU sed)Vérifier sed --version ; sur macOS, installer GNU sed
no input filesAucun fichier fourni et aucune entrée standardPasser un fichier en argument, ou utiliser un pipe
invalid command codeCommande sed inconnue, ou problème de guillemetsVérifier la lettre de commande et les guillemets simples
ÉlémentRôleExemple
sed 'cmd' fichierApplique une commande au fichiersed 's/a/b/' f.txt
sed -e 'cmd1' -e 'cmd2'Enchaîne plusieurs commandessed -e 's/a/b/' -e 's/c/d/'
cmd | sed 'cmd'Traite l'entrée d'un pipecat f.txt | sed 's/a/b/'
-iÉdition en place (modifie le fichier)sed -i 's/a/b/' f.txt
-i.bakÉdition en place avec sauvegardesed -i.bak 's/a/b/' f.txt
-nMode silencieux (rien par défaut)sed -n '/err/p' f.txt
-E (ou -r)Active les regex étendues (ERE)sed -E 's/[0-9]+/X/g'
-f script.sedLit les commandes depuis un fichiersed -f cmds.sed fichier
AdresseRôleExemple
5Ligne numéro 55s/a/b/
$Dernière ligne$d
/regex/Lignes reconnues par la regex/error/d
1,10Lignes 1 à 101,10s/a/b/
/début/,/fin/Plage entre deux motifs/BEGIN/,/END/d
1~2Ligne 1 puis une sur deux (GNU)1~2d
!Inverse l'adresse (NON)/DEBUG/!d
CommandeRôleExemple
s/old/new/Substitue (1ʳᵉ occurrence)s/error/warning/
s/old/new/gSubstitue (toutes les occurrences)s/foo/bar/g
s/old/new/giSubstitue sans tenir compte de la casses/error/warning/gi
dSupprime la ligne/^#/d
pAffiche la ligne-n '/error/p'
qQuitte après cette ligne10q
=Affiche le numéro de ligne/error/=
i\texteInsère une ligne avant1i\# Header
a\texteAjoute une ligne après$a\# Footer
c\texteRemplace la ligne entière3c\Nouvelle ligne
ÉlémentRôleExemple
&Le texte reconnu, dans le remplacements/[0-9]*/(&)/
\1, \2Groupes capturéss/\(.*\)/[\1]/
\(\)Groupe de capture (regex basique)s/\(mot\)/[\1]/
^ / $Début / fin de lignes/^/PREFIX: /
.N'importe quel caractères/a.c/X/
[abc] / [^abc]Classe / négation de classes/[^0-9]//g
FormeRôleExemple
s#old#new#Délimiteur # (idéal pour les chemins)s#/var#/opt#g
s@old@new@Délimiteur @s@http://@https://@g
s|old|new|Délimiteur |s|foo|bar|g

Vous maîtrisez sed lorsque vous pouvez cocher chacun de ces points :

  • Je sais utiliser s/ancien/nouveau/ pour substituer
  • Je sais utiliser le flag g pour remplacer globalement
  • Je sais utiliser un délimiteur alternatif (#, @)
  • Je sais supprimer des lignes avec d
  • Je sais cibler des lignes par numéro ou par motif
  • Je sais utiliser -n et p pour extraire des lignes
  • Je sais éditer en place avec -i et -i.bak
  • Je sais insérer ou ajouter une ligne avec i\ et a\
  • Je sais utiliser les références arrière (\1, &)
  • Je sais diagnostiquer une substitution qui ne fonctionne pas

Contrôle de connaissances

Validez vos connaissances avec ce quiz interactif

10 questions
5 min.
80% requis

Informations

  • Le chronomètre démarre au clic sur Démarrer
  • Questions à choix multiples, vrai/faux et réponses courtes
  • Vous pouvez naviguer entre les questions
  • Les résultats détaillés sont affichés à la fin

Lance le quiz et démarre le chronomètre

La commande sed est un outil essentiel pour quiconque travaille régulièrement en ligne de commande. Grâce à sa syntaxe concise et sa capacité à traiter des flux de texte, elle permet de modifier, nettoyer et transformer du contenu rapidement et efficacement. Que ce soit pour un remplacement ponctuel, un nettoyage de logs ou une modification en masse de fichiers de configuration, la maîtrise de sed fait gagner un temps précieux.

Ce site vous est utile ?

Sachez que moins de 1% des lecteurs soutiennent ce site.

Je maintiens +700 guides gratuits, sans pub ni tracing. Aujourd'hui, ce site ne couvre même pas mes frais d'hébergement, d'électricité, de matériel, de logiciels, mais surtout de cafés.

Un soutien régulier, même symbolique, m'aide à garder ces ressources gratuites et à continuer de produire des guides de qualité. Merci pour votre appui.

Abonnez-vous et suivez mon actualité DevSecOps sur LinkedIn