,
address2]]s/
pattern/
replacement/
[flags]Substitute replacement for pattern on each addressed line. If pattern addresses are used, the pattern //
represents the last pattern address specified. Any delimiter may be used. Use \
within pattern or replacement to escape the delimiter. The following flags can be specified:
g
Replace all instances of pattern on each addressed line, not just the first instance.
p
Print the line if a successful substitution is done. If several successful substitutions are done, sed prints multiple copies of the line.
w
fileWrite the line to file if a replacement was done. A maximum of 10 different files can be opened.
Replace nth instance of pattern on each addressed line. n is any number in the range 1 to 512, and the default is 1.
Here are some short, commented scripts:
# Change third and fourth quote to ( and ): /function/{ s/"/(/3 s/"/)/4 } # Remove all quotes on a given line: /Title/s/"//g # Remove first colon and all quotes; print resulting lines: s/://p s/"//gp # Change first "if" but leave "ifdef" alone: /ifdef/!s/if/ if/