Hvordan bruke SED -kommandoen til å erstatte en streng i en fil

Hvordan bruke SED -kommandoen til å erstatte en streng i en fil

Den fulle formen for “SED” -kommandoen er en strømredigerer. Denne kommandoen er en veldig kraftig kommando over Linux -operativsystemet, og den brukes til forskjellige formål. En av de vanlige bruken av denne kommandoen er å finne og erstatte en eller flere strengverdier i en fil. Det spesielle innholdet i en fil kan erstattes av denne kommandoen uten å åpne filen. Kommandoen “SED” støtter regelmessig uttrykk. Den spesifikke strengverdien kan søkes i en fil basert på det vanlige uttrykket som er definert med denne kommandoen. De forskjellige måtene å søke og erstatte den aktuelle strengen i en fil ved hjelp av “SED” -kommandoen vises i denne opplæringen.

Syntaks:

Syntaksen til “SED” -kommandoen for å søke og erstatte strengen fra en fil er gitt som følger:

sed -i "s/search/bytt ut" filnavn


Her brukes "jeg" -alternativet til å erstatte innholdet i den opprinnelige filen hvis det søkende ordet er funnet. “s”Kommando indikerer erstatningen som søker i den aktuelle strengen og erstatter strengen med en annen streng hvis det søkende ordet finnes i filen. Filnavnet inneholder navnet på et hvilket som helst eksisterende filnavn der søket og erstatningen er gjort.

Ulike eksempler på “SED” -kommandoer

De forskjellige måtene å søke og erstatte strengene i en fil vises i denne delen av opplæringen. Lag en tekstfil som heter studenter.txt av følgende innhold der søket og erstatt oppgaven gjøres ved å bruke “SED” -kommandoen:

studenter.tekst


MD. Hossain: CSE: Batch-50: Semester-10

Nibir Rahman: CSE: Batch-51: Semester-9

Mehnaz Kazi: CSE: Batch-52: Semester-8

Eksempel 1: Erstatt alle forekomster av strengen uten å endre filen

Metoden for å erstatte en bestemt streng i en fil basert på den nøyaktige samsvar med søkestrengen vises i dette eksemplet.

Kjør følgende kommando for å sjekke innholdet til studentene.txt -fil:

$ CAT -studenter.tekst


Kjør følgende kommando for å søke på ordet “CSE” hos studentene.TXT -fil og erstatt alle forekomster av denne strengen ved å bruke “BBA”:

$ sed 's/cse/bba/' studenter.tekst


Produksjon:

Følgende utgang vises etter å ha utført de tidligere kommandoene:


Eksempel 2: Bytt ut alle forekomster av strengen permanent i filen

Metoden for permanent å erstatte en bestemt streng i en fil basert på søkestrengen vises i dette eksemplet.

Kjør følgende kommando for å sjekke innholdet til studentene.txt -fil:

$ CAT -studenter.tekst


Kjør følgende kommando for å søke på ordet “batch” hos studentene.txt fil og erstatt alle forekomster av denne strengen i filen permanent ved å bruke "batch":

$ sed -i 's/batch/batch/i' studenter.tekst


Kjør følgende kommando for å sjekke det oppdaterte innholdet til studentene.txt -fil:

$ CAT -studenter.tekst


Produksjon:

Følgende utgang vises etter å ha utført de tidligere kommandoene:


Eksempel 3: Erstatt den spesielle forekomsten av strengen i filen

Metoden for å erstatte en bestemt streng med en bestemt forekomst i en fil basert på den nøyaktige samsvaret til søkestrengen vises i dette eksemplet:

Kjør følgende kommando for å sjekke innholdet til studentene.txt -fil:

$ CAT -studenter.tekst


Kjør følgende kommando for å søke på ordet “0” hos studentene.TXT -fil og erstatt alle forekomster av denne strengen i filen ved å bruke “1”:

$ sed 's/0/1/' studenter.tekst


Kjør følgende kommando for å søke på ordet “0” hos studentene.txt -fil og erstatt den andre forekomsten av denne strengen i filen ved å bruke “1”:

$ sed 's/0/1/2' studenter.tekst


Produksjon:

Følgende utgang vises etter å ha utført de tidligere kommandoene:


Eksempel 4: Skriv ut de erstattede linjene i filen to ganger

Metoden for å erstatte en bestemt streng i en fil basert på den nøyaktige samsvar med søkestrengen og utskrift hver erstattet linje to ganger vises i dette eksemplet.

Kjør følgende kommando for å sjekke innholdet til studentene.txt -fil:

$ CAT -studenter.tekst


Kjør følgende kommando for å søke på ordet “batch” hos studentene.TXT -fil og erstatt alle forekomster av denne strengen i filen ved å bruke "batch" og skriv ut de erstattede linjene to ganger:

$ sed 's/batch/batch/p' studenter.tekst


Produksjon:

Følgende utgang vises etter å ha utført de tidligere kommandoene:


Eksempel 5: Erstatt strengen til den aktuelle linjen i filen

Metoden for å erstatte en bestemt streng av en bestemt linje i en fil basert på søkestrengen vises i dette eksemplet.

Kjør følgende kommando for å sjekke innholdet til studentene.txt -fil:

$ CAT -studenter.tekst


Kjør følgende kommando for å søke på ordet “batch” hos studentene.TXT -filen og erstatt forekomsten av denne strengen i den andre linjen i filen ved å bruke "batch":

$ sed '2 s/batch/batch/i' studenter.tekst


Produksjon:

Følgende utgang vises etter å ha utført de tidligere kommandoene:


Eksempel 6: Erstatt strengen til det aktuelle området for filen

Metoden for å erstatte en bestemt streng i det spesielle området for en fil basert på søkestrengen vises i dette eksemplet.

Kjør følgende kommando for å sjekke innholdet til studentene.txt -fil:

$ CAT -studenter.tekst


Kjør følgende kommando for å søke på ordet “batch” hos studentene.txt -filen og erstatt forekomsten av denne strengen fra den første til den andre linjen i filen ved å bruke "batch":

$ sed '1,2 s/batch/batch/' studenter.tekst


Produksjon:

Følgende utgang vises etter å ha utført de tidligere kommandoene:

Konklusjon

Kommandoen “SED” er en veldig nyttig kommando av Linux for å gjøre søket og erstatte oppgaven. Det gjør oppgaven med å erstatte innholdet i en fil enklere ved å bruke forskjellige søkemønstre. Bruken av “SED” -kommandoen for å erstatte innholdet i en fil basert på den nøyaktige samsvar, antall søkeforekomster, eller antallet linjen vises her med flere eksempler. Vi håper at Linux -brukere kan bruke “SED” -kommandoen til å erstatte filinnholdet etter å ha lest denne opplæringen riktig.