erstatte tekststreng i filen [Guide]

Det kan være kedeligt at redigere tekstfiler på Linux i hånden. Det er derfor, det er godt at vide, hvordan man hurtigt erstatter tekststrenge i filer ved hjælp af kommandolinjen. Hvis du er ny til Linux og ikke ved, hvordan du gør det, kan vi hjælpe! Følg med, når vi viser dig, hvordan du erstatter en tekststreng i en fil på Linux!

Erstat tekststreng i fil – sed

Sed-værktøjet er den bedste måde at erstatte en tekststreng i en fil på Linux. Grunden? Den er ligetil at bruge og gør sit arbejde meget godt. Sed er normalt forudinstalleret på 99 % af Linux-operativsystemerne, så det er ikke nødvendigt at installere det for at bruge det.

Udskiftning af en tekststreng i en fil med Sed udføres med kommandoen sed -i. Sådan bruger du det. Åbn først et terminalvindue på Linux-skrivebordet. Du kan åbne et terminalvindue ved at trykke på Ctrl + Alt + T på tastaturet.

Når terminalvinduet er åbent og klar til brug, skal du skrive sed -i i terminalprompten. Dette er starten på udskiftningskommandoen.

sed -i

Når du har skrevet kommandoen sed -i, skal du tilføje et ‘ anførselstegn. Dette anførselstegn er vigtigt, da al tekst, der erstattes med sed -i, skal starte efter dette tegn.

sed -i '

Efter det første ‘ mærke, skriv s/. s/ går direkte før den eksisterende tekst, du ønsker at erstatte med sed.

sed -i 's/

Nu hvor s/ er skrevet ind i terminalens kommandolinjeprompt, er det tid til at fortælle sed hvilken tekst der skal erstattes i filen. I dette eksempel erstatter vi ordet “æble”.

sed -i 's/apple

Når den tekst, vi vil erstatte, er skrevet ind i kommandoen, er næste trin at skrive den nye tekst ind, som skal erstatte den. I dette eksempel erstatter vi “æbler” med “appelsiner”.

sed -i 's/apples/oranges

Når den tekst, vi vil erstatte, er skrevet ind i kommandoen (appelsiner), lukkes kommandoen af ​​med g/. G/ fortæller sed at erstatte alle tekstforekomster (æbler) med den nye tekst (appelsiner). Det skal se ud som eksemplet nedenfor.

  Hvorfor virker Omegle ikke?

Bemærk: Hvis du ikke ønsker at erstatte hver tekst i filen (f.eks. æbler til appelsiner), skal du fjerne g’et og få det til at køre som sed -i ‘s/æbler/appelsiner/’ i stedet for.

sed -i 's/apple/orange/g'

Fortæl endelig sed, hvilken fil teksten er i, der skal udskiftes. I dette eksempel er fruit.txt i hjemmemappen målet.

sed -i 's/apples/oranges/g' ~/fruit.txt

Tryk på enter-tasten for at udføre kommandoen og erstatte din tekststreng i filen.

Erstat tekststreng i fil – Perl

En anden måde at erstatte en tekststreng i en fil på Linux er med programmeringssproget Perl. Perl bruges meget til tekstbehandling, så det kan naturligvis udskifte tekststrenge i filer og er perfekt til denne brug.

  Sådan sparker du nogen af ​​Netflix

For at starte skal du sikre dig, at du har Perl installeret på din Linux-pc. De fleste Linux-operativsystemer leveres med Perl installeret. Men hvis du ikke har det, så tjek dit operativsystems hjælpeside for information om, hvordan du får det til at fungere.

Brug af Perl til at erstatte tekststrenge i en fil kræver terminalen. Åbn en terminal på Linux-skrivebordet ved at trykke på Ctrl + Alt + T på tastaturet. Eller søg efter “Terminal” i appmenuen og start den på den måde.

Når terminalvinduet er åbent og klar til brug, start med at skrive perl -pe i kommandolinjeprompten. Perl -pe kommandoen er det, der er nødvendigt for at erstatte en tekststreng i en fil.

perl -pe

Når du skriver perl -pe i terminalprompten, skal du starte med det første ‘ anførselstegn. Dette mærke fortæller Perl, hvor teksterstatningsområdet er i kommandoen.

perl -pe '

Efter det første ‘ anførselstegn skal du tilføje s/, efterfulgt af den tekststreng, du ønsker at erstatte, og en anden /. For at erstatte “æbler” i fruit.txt-filen, skal du for eksempel skrive følgende tekst.

perl -pe 's/apples/

Når du har skrevet det eller de ord, du ønsker at erstatte, skal du tilføje det ord, der skal erstatte den eksisterende tekst. Hvis du f.eks. vil erstatte “æbler” i “fruit.txt” med “appelsiner”, skal du tilføje “appelsiner” efter perl -pe ‘s/apples/, så det ser ud som perl -pe ‘s/apples/oranges/ .

perl -pe 's/apples/oranges/

Når begge tekststrenge er i kommandoen, skal du angive den inputfil, som Perl bruger. For eksempel, hvis du vil erstatte tekst i filen “fruit.txt”, skal du angive det i kommandoen.

  Reme.IO er en simpel påmindelsestjeneste, der fungerer sammen med din e-mail

Bemærk: I dette eksempel er filen “fruit.txt” i hjemmemappen (~/). Sørg for at erstatte “~/fruit.txt” med din tekstfils placering for at kommandoen skal virke.

perl -pe 's/apples/oranges/' ~/fruit.txt

Nu hvor inputfilen (den fil, du ændrer med Perl) er tilføjet til kommandoen, skulle kommandoen se ud som den gør nedenfor.

perl -pe 's/apples/oranges/' ~/fruit.txt > /tmp/output.txt;cat /tmp/output.txt > ~/fruit.txt

Når kommandoen ovenfor køres, vil tekststrengen blive erstattet med den nye tekst, du har angivet. I vores eksempel erstattede vi “æbler” med “appelsiner.” Indtast kommandoen nedenfor for at se ændringerne.

cat fruit.txt