Una guia ràpida per utilitzar els comandaments Sed a Linux

Una introducció a la comanda de Linux

El sistema operatiu Linux fa ús de les ordres de terminal per treballar amb el sistema de fitxers d'un ordinador. L'ús principal de l'ordre Linux , que és curta per a l'editor de seqüències, és modificar cada línia d'un fitxer o de flux substituint les parts especificades de la línia. Realitza canvis de text bàsics en un fitxer o entrada d'un canal. Per exemple, diuen que teniu un fitxer anomenat "songs.text" que conté aquestes línies:

1, Justin Timberlake, Títol 545, Preu $ 6,30 2, Taylor Swift, Títol 723, Preu 7,90 $ 3, Mick Jagger, Títol 610, Preu 7,90 $ 4, Lady Gaga, Títol 118, Preu 6,30 $ 5, Johnny Cash, Títol 482, Preu $ 6,50 6, Elvis Presley, títol 335, preu 6,30 $ 7, John Lennon, títol 271, preu 7,90 $

Fer substitucions de text amb sed

Si voleu canviar totes les aparicions de preus de 6,30 dòlars a 7,30 dòlars, podeu fer els canvis utilitzant l'ordre sed d'aquesta manera:

Sed's / 6.30 / 7.30 / 'songs.txt> cançons2.txt

Aquest codi fa el canvi i escriu el fitxer modificat a "songs2.txt". El fitxer de sortida conté:

1, Justin Timberlake, Títol 545, Preu $ 7.30 2, Taylor Swift, Títol 723, Preu $ 7.90 3, Mick Jagger, Títol 610, Preu $ 7.90 4, Lady Gaga, Títol 118, Preu $ 7.30 5, Johnny Cash, Títol 482, Preu $ 6.50 6, Elvis Presley, Títol 335, Preu 7,30 $ 7, John Lennon, Títol 271, Preu $ 7,90

Si voleu reemplaçar totes les aparicions de "Efectiu" amb "Paperera" que utilitzeu:

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

que crea un fitxer amb contingut:

1, Justin Timberlake, Títol 545, Preu $ 7: 30 2, Taylor Swift, Títol 723, Preu 7,90 $ 3, Mick Jagger, Títol 610, Preu 7,90 $ 4, Lady Gaga, Títol 118, Preu $ 7: 30 5, Johnny Trash, Títol 482, Preu 6,50 $ 6, Elvis Presley, Títol 335, Preu $ 7: 30 7, John Lennon, Títol 271, Preu 7,90 USD

Filtratge amb el comandament Sed

Sed també s'utilitza sovint per filtrar línies en un fitxer o en un flux. Per exemple, si només voleu veure les línies que contenen "John", feu servir:

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

que escriu les següents línies per arxiu johns.txt:

5, Johnny Trash, Títol 482, Preu $ 6.50 7, John Lennon, Títol 271, Preu $ 7.90