Skip to main content

Esimerkkejä siitä, miten Linux Sed -komentoa käytetään

SED Tutorial Basic Substitution Linux Shell BASH (Saattaa 2024)

SED Tutorial Basic Substitution Linux Shell BASH (Saattaa 2024)
Anonim

Linux-käyttöjärjestelmä käyttää terminaalin komentoja tietokoneen tiedostojärjestelmän kanssa. Linux-komennon ensisijainen käyttö sed, joka on lyhyt streameditorille, on muokata jokainen tiedoston tai virran rivin korvaamalla rivin tietyt osat. Se tekee perustekstistä muutoksia tiedostoksi tai syötteeksi putkesta. Oletetaan esimerkiksi, että sinulla on tiedosto nimeltä "songs.text", joka sisältää nämä rivit:

1, Justin Timberlake, osasto 545, hinta 6,30 dollaria2, Taylor Swift, osasto 723, hinta 7,90 dollaria3, Mick Jagger, osasto 610, hinta 7,90 dollaria4, Lady Gaga, nimike 118, hinta 6,30 dollaria5, Johnny Cash, osasto 482, hinta 6,50 dollaria6, Elvis Presley, osasto 335, hinta 6,30 dollaria7, John Lennon, osasto 271, hinta 7,90 dollaria

Tekstivaihtelujen tekeminen sed

Jos haluat muuttaa kaikki hintatiedot 6,30 - 7,30 dollaria, voit tehdä muutokset käyttämällä sed-komentoa tällä tavalla:

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

Tämä koodi tekee muutoksen ja kirjoittaa muutetun tiedoston "songs2.txt". Tulostiedosto sisältää:

1, Justin Timberlake, osasto 545, hinta 7,30 dollaria2, Taylor Swift, osasto 723, hinta 7,90 dollaria3, Mick Jagger, osasto 610, hinta 7,90 dollaria4, Lady Gaga, nimike 118, hinta 7,30 dollaria5, Johnny Cash, osasto 482, hinta 6,50 dollaria6, Elvis Presley, osasto 335, hinta 7,30 dollaria7, John Lennon, osasto 271, hinta 7,90 dollaria

Jos haluat korvata kaikki tapahtumat "Cash" -kohdassa "Roskakori", käytät:

sed / cash / roskakori / "songs.txt" songs2.txt

joka luo sisällön sisältävän tiedoston:

1, Justin Timberlake, osasto 545, hinta 7,30 dollaria2, Taylor Swift, osasto 723, hinta 7,90 dollaria3, Mick Jagger, osasto 610, hinta 7,90 dollaria4, Lady Gaga, nimike 118, hinta 7,30 dollaria5, Johnny Trash, osasto 482, hinta 6,50 dollaria6, Elvis Presley, osasto 335, hinta 7,30 dollaria7, John Lennon, osasto 271, hinta 7,90 dollaria

Suodatus Sed-komennolla

Sed on myös usein suodattaa rivit tiedostossa tai virrassa. Jos haluat esimerkiksi nähdä rivit, jotka sisältävät "John", käytät:

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

joka kirjoittaa seuraavat rivit tiedostoon johns.txt:

5, Johnny Trash, osasto 482, hinta 6,50 dollaria7, John Lennon, osasto 271, hinta 7,90 dollaria