Skip to main content

Eksempler på, hvordan Linux Sed Command bruges

Writing 2D Games in C using SDL by Thomas Lively (Juni 2026)

Writing 2D Games in C using SDL by Thomas Lively (Juni 2026)
Anonim

Linux-operativsystemet anvender terminalkommandoer til at fungere med en computers filsystem. Den primære brug af Linux-kommandoen sed, som er kort for stream editor, er at ændre hver linje i en fil eller stream ved at erstatte bestemte dele af linjen. Det gør grundlæggende tekstændringer til en fil eller input fra en rørledning. Sig for eksempel, at du har en fil med navnet "songs.text", der indeholder disse linjer:

1, Justin Timberlake, Titel 545, Pris $ 6,302, Taylor Swift, Titel 723, Pris $ 7,903, Mick Jagger, Titel 610, Pris $ 7,904, Lady Gaga, Titel 118, Pris $ 6,305, Johnny Cash, Titel 482, Pris $ 6.506, Elvis Presley, Titel 335, Pris $ 6,307, John Lennon, Titel 271, Pris $ 7,90

Gør tekstbytter med Sed

Hvis du vil ændre alle prisbegivenheder på $ 6,30 til $ 7,30, kan du foretage ændringerne ved hjælp af komm-kommandoen på denne måde:

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

Denne kode gør ændringen og skriver den ændrede fil til "songs2.txt". Uddatafilen indeholder:

1, Justin Timberlake, Titel 545, Pris $ 7,302, Taylor Swift, Titel 723, Pris $ 7,903, Mick Jagger, Titel 610, Pris $ 7,904, Lady Gaga, Titel 118, Pris $ 7,305, Johnny Cash, Titel 482, Pris $ 6.506, Elvis Presley, Titel 335, Pris $ 7,307, John Lennon, Titel 271, Pris $ 7,90

Hvis du vil erstatte alle forekomster af "Cash" med "Trash", bruger du:

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

som opretter en fil med indhold:

1, Justin Timberlake, Titel 545, Pris $ 7: 302, Taylor Swift, Titel 723, Pris $ 7,903, Mick Jagger, Titel 610, Pris $ 7,904, Lady Gaga, Titel 118, Pris $ 7: 305, Johnny Trash, Titel 482, Pris $ 6.506, Elvis Presley, Titel 335, Pris $ 7: 307, John Lennon, Titel 271, Pris $ 7,90

Filtrering med Sed Command

Sed bruges også ofte til at filtrere linjer i en fil eller stream. Hvis du f.eks. Kun vil se linjerne, der indeholder "John", bruger du:

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

som skriver følgende linjer til filen johns.txt:

5, Johnny Trash, Titel 482, Pris $ 6.507, John Lennon, Titel 271, Pris $ 7,90