Kuidas kasutada Sedit Linuxis

Sed tähistab vooredaktorit. See on Linuxi käsureapõhine redaktor. Populaarne sed on mõeldud faili(de) redigeerimiseks Linuxis automatiseerimisskripti osana, kuna tavalised redaktorid nõuavad aktiivset kasutaja sisendit ega saa faile redigeerida väljaspool redaktori ekraane. Sed-i kasutatakse kõige sagedamini käsurealt otsimiseks ja asendamiseks.

Seda tüüpi tekstiredaktorit saab liigitada ka mitteinteraktiivsete tekstiredaktorite kategooriasse.

Vaatame mõnda levinumat võimalust failide redigeerimiseks Sed abil. Toome näitena järgmise faili:

$: cat test.txt Kiire pruun koer hüppas üle laisa kassi. Linuxi operatsioonisüsteem. Minu kodu lähedal asuvas Metsas on nii kass kui ka hundid. 

Otsi ja asenda

Failist stringi otsimiseks ja teise stringiga asendamiseks käivitage:

sed -i "s/cat/fox/g" test.txt

Siin, -i lipp annab sedile korralduse muudatused faili kirjutada. Ilma selle liputa sed kuvab lihtsalt faili muudetud stringiga.

Jutumärkides on meil s/kass/rebane/g. The s on otsingu ja asendamise käsu jaoks sed. Siis on meil string, mida otsida, mis on kass. Seejärel string, millega see asendada, st rebane. Lõpuks on meil valikuline g, mis juhendab sed et asendada kõik esinemised faili kõigil ridadel. Ilma g, sed asendab ainult esmakordse esinemise kass igal real.

Siin saab kasutada ka Regexit.

sed -i "s/f[a-z]*\./cat\./g"

Sisesta

Teksti sisestamiseks sobiva stringiga rea ​​ette kasutage järgmist:

sed -i "/cat/i Start:" test.txt

siin, kass on otsitav string ja Alusta: on string, mis sisestatakse enne rida, kust otsitav string leitakse.

Samamoodi kasutage teksti lisamiseks rea taha:

sed -i "/fox/a End." test.txt

Kustuta

Alamstringi sisaldava rea ​​kustutamiseks kasutage:

sed -i "/Linux/d" test.txt

Rea numbriga rea ​​kustutamiseks, nt. esimene rida, kasutage:

sed -i '1d' test.txt

Mitme funktsiooni kombineerimine

Mitme funktsiooni kombineerimiseks, nt. otsi ja asenda, kustuta ühe käsuga, -e lippu saab kasutada.

sed -i -e "s/rebane/kass/g" -e '2d' test.txt

? Tervist!