20.3. Line Addressing
The key to making line editors
work for you is understanding how to select (or
"address") the lines that will be
affected by the commands in your script.
In
ed and ex, a command affects
only the "current" line -- the
first line of the file to begin with, and later the site of the last
edit or movement command -- unless you precede the command with an
address to indicate some other line or lines. In
sed, most commands apply to every line unless you
give an address.
Most line editors address lines in three ways:
It's possible to address single lines or a range of
lines.
Table 20-1 describes the addresses you can use with
ex.
Table 20-1. Line addressing in the ex editor
Address
|
Description
|
1,$
|
All lines in the file.
|
%
|
All lines; same as 1,$.
|
x,y
|
Lines x through y.
|
x;y
|
Lines x through y, with
current line reset to x.
|
1
|
Top of file.
|
0
|
"Before the top" of file. Used to
add text above top line: 0r,
xm0, etc.
|
.
|
Current line.
|
n
|
Absolute line number n.
|
$
|
Last line.
|
x-n
|
n lines before x.
|
x+n
|
n lines after x.
|
-n
|
n lines previous.
|
-
|
Previous line.
|
+n
|
n lines ahead.
|
If the address specifies a range of lines, the format is:
x,y
where x and y
are the first and last addressed lines. x
must precede y in the file.
--TOR, DG, and JP
 |  |  | 20.2. Writing Editing Scripts |  | 20.4. Useful ex Commands |
Copyright © 2003 O'Reilly & Associates. All rights reserved.
|
|