SED - Substitution

  • Grundlæggende substitution
    • Enkel
    • Global
    • Formidlingsarbejdet
  • Konditioneret udskiftning
    • forenklet
    • Fremskreden
  • Bloc
    • Avanceret brug

Den erstatningskommando: [s. ] ændrer alle forekomster af det regulære udtryk til en ny værdi.

Grundlæggende substitution

Enkel

Første kamp (hver linje) stødte kun op

sed 's / la / LA /' file.txt

Global

Alle forekomster (hver linje) stødt på

sed 's / la / LA / g' file.txt

Formidlingsarbejdet

Kun 2. forekomsten (hver linje) stødte på

 sed 's / la / LA / 2' file.txt 

Konditioneret udskiftning

forenklet

/ forklaring / - Kun hvis linjen indeholder "forklaring"

 sed '/ awk / s / sed / SED /' file.txt 

Antal linjer - Kun linjenummer "N"

 sed '18 s / sed / SED / 'file.txt 

/ Regex / - Kun hvis der er korrespondance med det regulære udtryk

 sed '/ ^ [] [Ss] ed / s / ed / ED / g' file.txt 

Fremskreden

0, / regex / - Kun den 1. sag fundet

 sed '0, / sed / s // SED /' file.txt 

Bloc

/ forklaring1 /, / forklaring2 / - Kun mellem "forklaring1 - forklaring2"

 sed '/ start /, / Slut / s / ed / ED /' file.txt # Kun den første sag fundet 

 sed '/ Start /, / Slut / s / ed / ED / g' file.txt # alle tilfælde 

8, 13 - Kun mellem linjer 8 til 13

 sed '8, 13 s / ed / ED / g' file.txt 

Vi kan også kombinere årsag og linje

 sed '8, / Slut / s / ed / ED / g' file.txt sed '/ Start /, 13 s / ed / ED / g' file.txt 

Eller med "regex"

 sed '/ Start /, $ s / ed / ED / g' file.txt # til slutningen ($) sed '/ ^ [] [Ss] ed /, 13 s / ed / ED /' file.txt 

Avanceret brug

Udskift enhver tekst mellem 2 grunde eksklusive grunde

 sed '/ Start /, / Slut / {/ Start / b; / End / b; s /.*/ SED - The Stream à ‰ Ditor /; } 'file.txt 
Forrige Artikel Næste Artikel

Top Tips