Skip to main content

Exemples d'utilisation de la commande Linux Sed

Week 1 (Mai 2025)

Week 1 (Mai 2025)
Anonim

Le système d'exploitation Linux utilise des commandes de terminal pour fonctionner avec le système de fichiers d'un ordinateur. Utilisation principale de la commande Linux sed, qui est l’abréviation de stream editor, consiste à modifier chaque ligne d’un fichier ou d’un flux en remplaçant des parties spécifiées de la ligne. Il apporte des modifications de texte de base à un fichier ou à une entrée d'un pipeline. Par exemple, disons que vous avez un fichier nommé "songs.text" qui contient ces lignes:

1, Justin Timberlake, Titre 545, Prix 6,30 $2, Taylor Swift, Titre 723, Prix 7,90 $3, Mick Jagger, Titre 610, Prix 7,90 $4, Lady Gaga, Titre 118, Prix 6,30 $5, Johnny Cash, titre 482, prix 6,50 $6, Elvis Presley, Titre 335, Prix 6,30 $7, John Lennon, Titre 271, Prix 7,90 $

Faire des substitutions de texte avec Sed

Si vous souhaitez modifier toutes les occurrences de prix de 6,30 USD à 7,30 USD, vous pouvez effectuer les modifications à l'aide de la commande sed de cette manière:

sed 's / 6.30 / 7.30 /' songs.txt> songs2.txt

Ce code effectue le changement et écrit le fichier modifié dans "songs2.txt". Le fichier de sortie contient:

1, Justin Timberlake, Titre 545, Prix 7,30 $2, Taylor Swift, Titre 723, Prix 7,90 $3, Mick Jagger, Titre 610, Prix 7,90 $4, Lady Gaga, Titre 118, Prix 7,30 $5, Johnny Cash, titre 482, prix 6,50 $6, Elvis Presley, Titre 335, Prix 7,30 $7, John Lennon, Titre 271, Prix 7,90 $

Si vous souhaitez remplacer toutes les occurrences de "Cash" par "Trash", vous utilisez:

sed 's / Cash / Trash /' songs.txt> songs2.txt

qui crée un fichier avec du contenu:

1, Justin Timberlake, Titre 545, Prix 7: 30 $2, Taylor Swift, Titre 723, Prix 7,90 $3, Mick Jagger, Titre 610, Prix 7,90 $4, Lady Gaga, Titre 118, Prix 7h305, Johnny Trash, Titre 482, Prix 6,50 $6, Elvis Presley, Titre 335, Prix 7: 30 $7, John Lennon, Titre 271, Prix 7,90 $

Filtrage avec la commande Sed

Sed est également fréquemment utilisé pour filtrer les lignes d'un fichier ou d'un flux. Par exemple, si vous voulez seulement voir les lignes contenant "John", vous utilisez:

sed -n '/ John / p' songs.txt> johns.txt

qui écrit les lignes suivantes dans le fichier johns.txt:

5, Johnny Trash, Titre 482, Prix 6,50 $7, John Lennon, Titre 271, Prix 7,90 $