Yleisesti käytetty `` sed '' huijausarkki:
Seuraavassa taulukossa selitetään yleisimmin käytetyt 'sed' -komennon merkit.
Merkki | Tarkoitus |
kohteeseen | Sitä käytetään sisällön lisäämiseen. |
b | Sitä käytetään sisällön haarautumiseen. |
c | Sitä käytetään sisällön muuttamiseen. |
d | Sitä käytetään tiedoston rivin poistamiseen. |
D | Sitä käytetään poistamaan tiedoston ensimmäinen rivi. |
g | Se kopioi tilan tekstistä. |
G | Sitä käytetään liittämiseen pitotekstistä. |
h | Sitä käytetään kopioimaan pitoteksti. |
H | Sitä käytetään liittämään pitoteksti. |
i | Sitä käytetään lisäykseen. |
Minä | Sitä käytetään korvaavan rivin tulostamiseen. |
n | Sitä käytetään siirtymään seuraavalle riville. |
N | Sitä käytetään seuraavan syöttörivin liittämiseen. |
s | Sitä käytetään tulostamiseen. |
P | Sitä käytetään ensimmäisen rivin tulostamiseen. |
mitä | Sitä käytetään lopettamaan. |
Q | Sitä käytetään lopettamaan välittömästi. |
r | Sitä käytetään tiedoston lukemiseen. |
R | Sitä käytetään rivin lukemiseen tiedostosta. |
s | Sitä käytetään korvaamaan. |
t | Sitä käytetään korvaamisen testaamiseen. |
T | Sitä käytetään testaamaan, ettei korvausta ole. |
sisään | Sitä käytetään tiedostoon kirjoittamiseen. |
SISÄÄN | Sitä käytetään rivin kirjoittamiseen tiedostoon. |
x | Sitä käytetään kuvioiden vaihtamiseen ja pitämiseen. |
ja | Sitä käytetään kääntämiseen. |
Kanssa | Sitä käytetään viivan tyhjentämiseen. |
'=' | Sitä käytetään rivinumeron tulostamiseen. |
Korvaa useita rivejä terminaalin komennolla `sed ':
Tässä opetusohjelman osassa näytetään, kuinka `` sed '' -komentoa voidaan käyttää useiden rivien korvaamiseen tiedostosta päätelaitteesta. Luo tiedosto nimeltä sed.txt Testaa tämän osan komennot seuraavan sisällön avulla.
sed.txt
Sedin koko muoto on stream -editori.
Se on Unix -apuohjelma, jota käytetään tekstin lukemiseen ja muuntamiseen eri muodossa.
Sen on kehittänyt Lee E. McMahon.
Sitä käytetään tekstinkäsittelyyn.
Se tukee säännöllisiä lausekkeita.
Esimerkki 1: Korvaa kaksi peräkkäistä viivaa
Seuraava komento 'sed' korvaa kaksi peräkkäistä riviä toisella rivillä. Tässä vaihtoehtoa -z käytetään korvaamaan peräkkäiset rivit nollatiedoilla ennen korvaavan tekstin lisäämistä. Komennon mukaan 3rdja 4thtiedoston rivit korvataan tekstillä, 'Se on erittäin hyödyllinen työkalu' .
$kissased.txt$sed -Kanssa 's/Sen on kehittänyt Lee E. McMahon. nSitä käytetään tekstissä
/Se on erittäin hyödyllinen työkalu.sed.txt
Seuraava tulos tulee näkyviin komentojen suorittamisen jälkeen.
Esimerkki 2: Korvaa useita rivejä ottelun ja yleisen lipun perusteella
Seuraava `` sed '' -komento korvaa kaikki sanalla alkavat rivit, 'Se' sanalla, ' Tämä rivi korvataan ’.
$kissased.txt$sed 's/^It.*/Tämä rivi korvataan/g'sed.txt
Seuraava tulos tulee näkyviin komentojen suorittamisen jälkeen. Kolme riviä sisältää sanan ' Se 'Tiedostossa. Nämä rivit on siis korvattu korvaavalla tekstillä.
Esimerkki 3: Korvaa useita rivejä ottelun ja seuraavan rivin komennon perusteella
Seuraava `` sed '' -komento korvaa sanan, On 'Sanalla' oli 'Seuraavan rivin komennolla' n '.
$kissased.txt$sed '{n;/on/{s/on/oli/}}'sed.txt
Seuraava tulos tulee näkyviin komentojen suorittamisen jälkeen. Tässä, 'On' löytyy 2: statoinenja 4thtiedoston rivejä, ja sana muokkaa näitä rivejä 'Oli' .
Korvaa useita rivejä luomalla komentosarjatiedosto 'sed':
Edellisissä esimerkeissä 'sed' -komentoja on suoritettu päätelaitteesta. Mutta se on komentosarjakieli, ja jos komentosarja sisältää useita lausuntoja, on parempi luoda sed -tiedosto komentosarjalla. Luo tekstitiedosto nimeltä student.txt seuraavan sisällön kanssa, jossa `` sed '' - komentosarjaa käytetään.
student.txt
ID: 111045Nimi: Robert
Osasto: CSE
Erä: 35
ID: 111876
Nimi: Joseph
Osasto: BBA
Erä: 27
ID: 111346
Nimi: William
Osasto: CSE
Erä: 45
ID: 111654
Nimi: Charles
Osasto: EEE
Erä: 41
ID: 111346
Nimi: John
Osasto: CSE
Erä: 25
ID: 111746
Nimi: Thomas
Osasto: CSE
Erä: 15
Esimerkki 4: Korvaa tiedoston useita rivejä komentosarjatiedostolla 'sed'
Luo sed -tiedosto, jonka nimi on korvata.käytetty seuraavalla sisällöllä korvaamaan useita rivejä hakukuvion perusteella. Tässä sana ' CSE 'Haetaan tekstitiedostosta, ja jos vastaavuus on olemassa, se etsii uudelleen numeroista 35 ja 15. Jos toinen vastaavuus on tiedostossa, se korvataan numerolla 45.
korvata.käytetty
/CSE/ {p; n;
/35/ {
s/35/Neljä viisi/;
p; d;
}
/viisitoista/ {
s/viisitoista/55/;
p; d;
}
}
p;
Tarkista tiedoston nykyinen sisältö suorittamalla seuraava komento. CSE ilmestyi neljä kertaa tekstitiedostoon. 35 ja 15 ovat kahdessa paikassa.
$kissastudent.txt
Seuraava komento korvaa useiden rivien sisällön sed -komentosarjan perusteella.
$sed -n -fkorvata.käytetyt opiskelijat.txtSeuraava tulos tulee näkyviin komennon suorittamisen jälkeen.
Johtopäätös
Tässä opetusohjelmassa on esitetty erilaisia tapoja korvata useita rivejä tai useiden rivien sisältö 'sed' -komennolla. Tässä opetusohjelmassa esitetään myös, kuinka `` sed '' -komentosarja voidaan suorittaa sed -tiedostosta. Toivon, että tämä opetusohjelma auttaa lukijaa korvaamaan minkä tahansa tiedoston useita rivejä komennolla 'sed'.