The simplest global replacements substitute one word (or a
phrase) for another.
If you have typed a file with several misspellings (editer
), you can do the global replacement:
This substitutes editor
for every occurrence of
throughout the file.
There is a second, slightly more complex syntax for global replacement.
This syntax lets you search for a pattern, and then, once you
find the line with the pattern, make a substitution on a string
different from the pattern.
You can think of this as context-sensitive replacement.
The syntax is as follows:
tells the command to operate on all lines of a file.
identifies the lines on which a substitution is to take
On those lines containing pattern
) for old
the characters in new
indicates that the substitution is to
occur globally on that line
For example, in this book, the SGML directives
place a box around [ESC]
to show the ESCAPE key.
You want [ESC]
to be all in caps, but you
don't want to change any instances of Esc
ape that might be in the text.
To change instances of Esc
only when Esc
on a line that contains the
you could enter:
If the pattern being used to find the line is the same as the one you
want to change, you don't have to repeat it. The command:
would search for lines containing string
and substitute for
that same string
has the same effect as:
You can save some typing by using the second form.
It is also possible to combine the
and other ex
As we'll show, you can thus make global deletions, moves, and copies.