Tekstitiedostojen ja päätelaitteiden muokkaaminen on jokapäiväinen työ niille, jotka hallinnoivat Linux-koneita. Komentorivin apuohjelmat, kuten sed, mahdollistavat käyttäjän muokata ja muuttaa tekstitiedoston sisältöä suoraan pääteikkunasta.
Tässä artikkelissa keskustelemme sed -komennosta yksityiskohtaisesti yhdessä joidenkin tärkeiden esimerkkien kanssa, jotka osoittavat sed-apuohjelman voiman Linuxissa.
Mikä on sed-komento?
Sed-komento, joka on lyhenne sanoista Suoratoistoeditori, on komentorivityökalu, jonka avulla Linux-käyttäjät voivat suorittaa tekstipohjaisia toimintoja tiedostoille ja päätelaitteille. Sed-sovelluksen avulla käyttäjät voivat löytää ja korvata tiettyjä sanoja tekstistä, näyttää tietyn osan tuotoksesta ja muokata tekstitiedostoja avaamatta niitä.
Sed-komennon tukemat kolme perustoimintoa ovat:
- Lisäys
- Poistaminen
- Vaihto (etsi ja korvaa)
Edistyneet käyttäjät voivat myös toteuttaa säännöllisiä lausekkeita sed-komennolla muokkaamaan tekstivirtoja tehokkaammin.
Komennon perussyntaksi on:
sed [vaihtoehdot] [kuvio] [filepath]
...missä vaihtoehtoja ovat komennon eri toiminnot, kuvio on säännöllinen lauseke tai komentosarja, jonka haluat yhdistää, ja tiedostopolku on polku tekstitiedostoon, joka sisältää tekstin.
10 Esimerkkejä Linux sed -komennosta
Jos aiot tulla tavalliseksi Linux-käyttäjäksi, voi olla hyödyllistä tietää tiedostojen muokkaaminen, tiettyjen sanojen etsiminen ja korvaaminen sekä päätelaitteen suodattaminen. Tämä osa sisältää joitain esimerkkejä sed-komennosta, joka tekee sinusta varmasti Linux-tehokäyttäjän.
Käytämme seuraavaa tekstitiedostoa esittelyssä viestissä.
Tämä on esittelytekstitiedosto.
Se on hämmästyttävä tiedosto, joka auttaa meitä kaikkia.
Sed-komento soveltuu erinomaisesti myös suoratoistoon.
Haluatko oppia käyttämään komentoa?
Tämä on toinen rivi tiedostossa.
Tämä on tiedoston kolmas yleinen rivi.
Tämä tiedosto on nimetty tekstitiedostoksi.
Tämä on omena.
Tämä on oranssi.
1. Näytä valikoima viivoja
Linux-komennot, kuten pää ja häntä, tuottavat tekstitiedoston ensimmäisen tai viimeisen kymmenen rivin. Mutta entä jos haluat saada sisällön tiedostoon kahden tietyn rivin väliin? Tällaisissa tilanteissa sed-komento voi olla hyödyllinen.
Tiedoston rivien 3 ja 5 välisen sisällön tulostaminen textfile.txt:
sed -n '3,5p' textfile.txt
-n lippu estää sediä näyttämästä kuviotilaa jokaisen jakson lopussa. Voit käyttää myös --hiljainen ja --hiljainen vaihtoehtoja -n. s argumentti tarkoittaa Tulosta ja sitä käytetään vastaavien viivojen näyttämiseen käyttäjälle.
Edellä mainitun komennon suorittaminen esimerkkitiedostossa tuottaa seuraavan tuloksen.
Sed-komento soveltuu erinomaisesti myös suoratoistoon.
Haluatko oppia käyttämään komentoa?
Tämä on toinen rivi tiedostossa.
Jos haluat tulostaa koko tiedostosisällön määritettyä aluetta lukuun ottamatta, käytä d lippu sijaan s komennossa:
sed '3,5d' textfile.txt
d flag poistaa sovitetut merkkijonot ulostulosta ja näyttää muun sisällön.
Tämä on esittelytekstitiedosto.
Se on hämmästyttävä tiedosto, joka auttaa meitä kaikkia.
Tämä on tiedoston kolmas yleinen rivi.
Tämä tiedosto on nimetty tekstitiedostoksi.
Tämä on omena.
Tämä on oranssi.
2. Näytä ei-peräkkäiset rivit
Ei-peräkkäisten viivojen tulostaminen tiedoston useiden alueiden välillä:
sed -n -e '1,2p' -e '5,6p' textfile.txt
Tuotos:
Tämä on esittelytekstitiedosto.
Se on hämmästyttävä tiedosto, joka auttaa meitä kaikkia.
Tämä on toinen rivi tiedostossa.
Tämä on tiedoston kolmas yleinen rivi.
-e lippu auttaa sisään suorittaminen useita toimintoja yhdellä komennolla.
3. Lisää väli viivojen väliin
Jos haluat jostain syystä lisätä tyhjiä rivejä tekstitiedoston jokaisen rivin väliin, käytä G argumentti oletuskomennolla sed.
sed G textfile.txt
Jos haluat lisätä useita tyhjiä rivejä lähtöön, välitä useita G argumentit erotetaan puolipiste (;) merkki.
sed 'G; G 'textfile.txt
4. Korvaa sana tekstitiedostossa
Jos haluat korvata tietyn sanan jokaisen esiintymän jollakin muulla sanalla, käytä s ja g argumentit komennolla. Perussyntaksi sanojen korvaamiseksi sed-komennolla on:
sed s / originalword / korvaussana / g tiedostonimi
Käyttämällä yllä mainittua syntaksia voit korvata sanan hämmästyttävä kanssa super tiedostoon textfile.txt:
sed s / amazing / super / g textfile.txt
s argumentti tarkoittaa korvaaminen ja g komentoa käytetään korvaamaan vastaava sisältö määritetyllä korvaavalla sisällöllä.
Jos haluat korvata sanan toisen esiintymän sedillä, välitä numero g Perustelu. Tässä tapauksessa:
sed s / amazing / super / g2 textfile.txt
Jos haluat jättää merkkitapaukset korvaamatta sanoja, käytä gi sijasta g, missä i tarkoittaa jättää huomiotta tapauksessa.
sed s / Hämmästyttävä / super / gi textfile.txt
Liittyvät: Käytätkö Vi: tä? Näin avaat tiedoston ja tallenna ja lopeta
5. Korvaa sanat alueen sisällä
Voit myös korvata sanoja tietyllä alueella.
sed '2,5s / amazing / super / g' textfile.txt
6. Suorita useita korvauksia kerralla
Jos haluat suorittaa kaksi tai useampia korvauksia kerralla, erota komennot vain puolipiste (;) merkki.
sed 's / hämmästyttävä / super / g; s / komento / apuohjelma / gi 'textfile.txt
Järjestelmä näyttää seuraavan lähdön.
Tämä on esittelytekstitiedosto.
Se on super tiedosto, joka auttaa meitä kaikkia.
Sed-apuohjelma soveltuu erinomaisesti myös suoratoistoon.
Haluatko oppia käyttämään apuohjelmaa?
Tämä on toinen rivi tiedostossa.
Tämä on tiedoston kolmas yleinen rivi.
Tämä tiedosto on nimetty tekstitiedostoksi.
Tämä on omena.
Tämä on oranssi.
7. Korvaa sanat vain, jos vastaavuus löytyy
Voit käyttää sed -komentoa myös sanan korvaamiseen vain, jos riviltä löytyy annettu osuma. Esimerkiksi sanan korvaamiseksi a kanssa an jos sana oranssi on rivillä:
sed -e '/ oranssi / s / a / an / g' textfile.txt
Yllä mainitun komennon antaminen tuottaa:
Tämä on esittelytekstitiedosto.
Se on super tiedosto, joka auttaa meitä kaikkia.
Sed-apuohjelma soveltuu erinomaisesti myös suoratoistoon.
Haluatko oppia käyttämään apuohjelmaa?
Tämä on toinen rivi tiedostossa.
Tämä on tiedoston kolmas yleinen rivi.
Tämä tiedosto on nimetty tekstitiedostoksi.
Tämä on omena.
Tämä on oranssi.
Huomaa, että sana a rivillä Tämä on omena ei korvattu, koska järjestelmä ei löytänyt sanaa oranssi sen sisällä.
8. Korvaa sanat säännöllisin lausekkein
Niille, jotka osaavat käyttää säännöllisiä lausekkeita, merkkijono-operaatioiden suorittaminen sed-komennolla on paljon helpompaa. Voit ottaa käyttöön säännöllisiä lausekkeita komennon tehon parantamiseksi.
Korvaa kaikki sanan esiintymät Hämmästyttävä tai hämmästyttävä kanssa super:
sed-e '/ [Aa] mazing / super / g' textfile.txt
Vastaavasti voit käyttää edistyneitä säännöllisiä lausekkeita tiettyjen toimintojen suorittamiseen sed-komennolla.
9. Pipe sed muilla komennoilla
Voit ketjuttaa sedin myös muilla Linux-komennoilla. Voit esimerkiksi putkia lspci komento sedillä lisätä tyhjiä välilyöntejä rivien väliin tulosteessa.
lspci | sed G
Korvaa tietyt sanat ip-reittinäyttö komento:
ip-reittinäyttö | sed s / src / lähde / g
Edellä mainittu komento korvaa sanan lähde alkuperäisen sanan sijasta src.
Liittyvät: Kuinka etsiä tiedostoja Linuxissa Etsi-komennolla
10. Muokkaa ja varmuuskopioi alkuperäinen tiedosto
Kun työskentelet järjestelmätiedostojen kanssa, alkuperäisen tiedoston varmuuskopiointi muutosten tekemisen aikana on tärkeää. Tämä auttaa sinua palauttamaan muutokset, jos jokin rikkoutuu.
Voit varmuuskopioida alkuperäisen tiedoston sed-sovelluksella käyttämällä -i lippu komennossa.
sed -i'.backup '' s / amazing / super / g 'textfile.txt
Uusi tiedosto luodaan nimellä textfile.txt.backup. Voit tarkistaa, että nämä kaksi tiedostoa ovat erilaisia, käyttämällä ero komento.
diff textfile.txt textfile.txt.backup
Merkkijonojen muokkaus Linuxissa sed
Joskus, kun työskentelet tekstitiedostojen kanssa päätelaitteessa, tuloksen muotoilu ja muokkaus luettavuuden parantamiseksi ovat välttämättömiä. Sed ja awk ovat Linuxin komentorivin apuohjelmia, joiden avulla käyttäjä voi työskennellä tehokkaasti tekstitiedostojen kanssa jakamalla tiedot erillisiin riveihin.
Monilla käyttäjillä on vaikea muistaa sed-komennon argumentteja ja lippuja, koska niitä on paljon käytettävissä. Tieto siitä, kuinka saada komentorivikäsikirjat mille tahansa Linux-komennolle, auttaa sinua pääsemään helposti pois tällaisista tilanteista.
Kaikki olennaiset komennot Linux-komentojen oppimiseksi komentoriviltä
Lue seuraava
- Linux
- Tekstieditori
- Terminaali
- Komentokehote

Deepesh on MUO: n Linuxin nuorempi toimittaja. Hän on kirjoittanut tietosisältöä Internetissä yli 3 vuotta. Vapaa-ajallaan hän nauttii kirjoittamisesta, musiikin kuuntelusta ja kitaransoitosta.
Tilaa uutiskirjeemme
Liity uutiskirjeeseemme, jossa on teknisiä vinkkejä, arvosteluja, ilmaisia e-kirjoja ja erikoistarjouksia!
Vielä yksi askel !!!
Vahvista sähköpostiosoitteesi juuri lähettämässäsi sähköpostiviestissä.