Hvordan erstatter du en variabel i en fil ved hjelp av SED?

Hvordan erstatter du en variabel i en fil ved hjelp av SED?

Steam Editor, forkortet som SED, er en kommando som brukes til å finne og erstatte enhver tekst i en fil ved hjelp av forskjellige teknikker og syntaks. I dette innlegget vil vi forstå begrepene SED og lære hvordan du kan erstatte en variabel eller dens verdi i en fil ved hjelp av SED.

Syntaksen for å erstatte streng

For å erstatte en variabel verdi ved hjelp av SED, må vi først forstå hvordan SED fungerer og hvordan vi kan erstatte en enkel streng i hvilken som helst fil ved hjelp av SED.

For å erstatte en hvilken som helst streng, er syntaksen ganske enkel og gitt nedenfor:

$ sed -i 's/old-string/new-string/g' file_name

I denne syntaksen trenger du bare å gi strengen du vil erstatte på den gamle strengen og deretter den nye strengen i det omvendte kommaene. Etter det, oppgi filen du vil finne og erstatte den nevnte strengen.

Eksempel:

Anta at vi har en tekstfil “Fil.txt ”der vi har en tilfeldig tekst som“ Welcome to Linuxhints Channel ”, og i denne filen ønsker vi å erstatte ordkanalen til nettstedet ved hjelp av SED -kommandoen.

$ kattefil.tekst

Kommandoen for å endre kanalen til nettstedet vil gå slik:

$ sed -i 's/kanal/nettsted/g' fil.tekst

Etter å ha kjørt kommandoen, tar vi et tilbakeblikk på filen:

$ kattefil.tekst

Strengen ble erstattet ved hjelp av SED -kommandoen. Så det er slik du kan finne og erstatte hvilken som helst streng i en hvilken som helst fil av Linux -operativsystemet ved hjelp av SED -kommandoen.

La oss nå lære å erstatte en variabel verdi i en fil.

Bytt ut en variabel

Syntaksen for å finne og erstatte verdien av en variabel i en fil som bruker SED er den samme som å finne og erstatte en streng i en fil. Den eneste vanskelige delen er å skrive et vanlig uttrykk for å finne noe i en fil for å erstatte den delen. Så for å endre en variabel verdi, vil syntaksen gå slik:

$ sed -i 's/var =.*/var = new_value/'file_name

La oss se på et eksempel for å se den sanne implementeringen og forstå det med mer klarhet.

Eksempel:

Anta at vi har en Python -kodefil der vi har et par variabler. Disse variablene har noen verdier tildelt dem.

$ kattekode.py

For å erstatte en hvilken som helst variabel, kan vi søke etter den med navnet og gi en ny verdi til den ved å bruke SED -kommandoen gitt nedenfor:

$ sed -i 's/num1 =.*/num1 = 200/'kode.py

Etter å ha utført ovennevnte SED -kommando, viser vi filinnholdet igjen:

$ kattekode.py

Du kan se at verdien av "Num1" -variabelen ble erstattet i henhold til vårt krav.

Ved hjelp av dette enkle trikset kan du erstatte hvilken som helst variabel eller dens verdi i en hvilken som helst fil ved hjelp av SED.

Konklusjon

Dette innlegget gir en enkel og enkel måte å finne og erstatte en variabel i en hvilken som helst fil ved hjelp av SED. Vi har lært å erstatte en streng i en fil og erstatte en variabel verdi ved hjelp av SED.