Hvordan bruke SED for å legge til en ny linje på slutten av hver linje

Hvordan bruke SED for å legge til en ny linje på slutten av hver linje

SED står for Stream Editor som brukes til grunnleggende redigeringsoperasjoner på en tekst som kommer fra en fil eller på en inngang som direkte sendes til SED fra en annen kommando. I likhet med inngangskriteriene, kan SED behandle en inndatafil og gi utdata til et annet program (ettersom det tar innspill fra andre programmer direkte). Det kan brukes til å spore det samme ordet som brukes i et dokument på forskjellige måter, og brukerne kan sette dem for bedre forståelse. Som grunnlaget for SED er basert på en tekstredigerer, men den kan brukes til å skrive komplekse skript også. Imidlertid er de primære operasjonene som en SED -kommando utfører, listet opp nedenfor:

  • For å skrive ut linjen
  • Finn og erstatt ordene i en linje eller i en tekstfil
  • Slett linjen som inneholder et bestemt ord
  • Legg til linjen/teksten etter hvilken som helst linje (ved å spesifisere linjenummer)
  • Legg til en linje før du starter hver linje eller før en bestemt linje

SED -kommandoen til Ubuntu har flere operasjoner å utføre; Vår dagens guide vil fokusere på å legge til teksten på slutten av hver linje i en hvilken som helst tekstfil.

Så før du får et innblikk i denne opplæringen, la oss forstå den grunnleggende syntaksen til SED -kommandoen:

Syntaks

sed [alternativer] kommando [fil for å redigere]

Alternativene i SED -kommandoen brukes til å få utdataene i flere formater; For eksempel brukes alternativet "-i" for å lagre endringene (forårsaket av SED-kommandoen) til den opprinnelige filen. Den "kommandoen" -delen av denne syntaksen inneholder den grunnleggende driften av SED -kommandoen du vil gjøre ved hjelp av denne kommandoen (rediger, slett eller skriv ut linjen). Til slutt består "filen å redigere" av navnet på filen som SED -kommandoen blir brukt.

Hvordan installere SED på Ubuntu

I de fleste av Linux-distribusjonene kommer SED med en innebygd tilgang; Du kan få versjonen av SED for å sjekke om den er tilgjengelig på systemet ditt eller ikke; Skriv følgende kommando i terminalen for å bekrefte eksistensen av SED på Ubuntu:

$ SED -Versjon

I tilfelle SED ikke er tilgjengelig på Ubuntu; Du kan installere den ved hjelp av Package Manager ved å utføre kommandoen som er nevnt nedenfor:

$ sudo apt install sed

Hvordan legge til ny linje til slutten av hver linje

Ettersom operasjonen vil bli utført på en spesifikk tekstfil; Så du må opprette en tekstfil og legge til litt tekst i den, eller du kan bruke SED på hvilken som helst eksisterende tekstfil også (sørg for at filen ikke inneholder viktig informasjon, ellers kan du miste informasjonen mens du tester):

Vi har laget en tekstfil "test.tekst”På skrivebordet vårt (du kan bruke hvilken som helst katalog) og lagt til noen tekstlinjer til det. La oss få innholdet i “test.tekst”På terminalen ved å bruke kommandoen skrevet nedenfor:

$ kattest.tekst

Nå vil vi bruke SED -kommando for å legge til en linje “Du jobber i Terminal of Ubuntu”Til hver linje i filen”test.tekst”; Så den nedenfor-nevnte kommandoen vil bidra til å utføre denne handlingen:

Det er å legge merke til at “en”Nøkkelord brukes her for å legge til teksten som er skrevet etter den til hver linje i filen“test.tekst”:

$ sed 'a du jobber i Terminal of Ubuntu' Test.tekst

Du vil observere at resultatet er skrevet ut på terminalen, men den originale filen “Test.txt ”forblir uendret; Hvis du også vil ha endringene i den opprinnelige filen; Du må bruke alternativet “-i”, da vi har gjort det ved å bruke kommandoen nedenfor:

$ sed -i 'a du jobber i Terminal of Ubuntu' Test.tekst

Bortsett fra å legge til hver linje, gir SED -kommandoen deg muligheten til å legge tekst til hvilken som helst spesifikk linje; For å forekomme følgende kommando vil legge til teksten til bare linje nr. 3, og endringene vil også bli gjort til den opprinnelige filen:

$ sed '3a sed er en multipurpose kommandolinjeverktøy' test.tekst

Man kan også lagre resultatet av en hvilken som helst SED -kommando til en annen fil; For eksempel vil den nedenfor-nevnte kommandoen lagre resultatet i den nye tekstfilen “Output.tekst".

$ sed '3a sed er en multipurpose kommandolinjeverktøy' test.txt> output.tekst

Konklusjon

SED er et kommandolinjeverktøy kjent som Stream Editor, og den kan utføre noen grunnleggende operasjoner på filen som å søke, erstatte, sette inn eller slette. Bortsett fra disse grunnleggende operasjonene, kan den også brukes til kompleks skripting: derfor sies det at nybegynneren kan nøle med å lære dette. Faktisk er SED-kommandoen lett å lære og implementere på et grunnleggende nivå, og de nye brukerne må prøve dette for å utføre de ovennevnte operasjonene. Når vi vet viktigheten av SED, har vi samlet denne guiden for å demonstrere måtene å legge til ny linje eller ord på slutten av hver linje. Dessuten kan brukere også utføre denne oppgaven på et bestemt linjenummer ved å nevne nummeret i kommandoen.