EDIT(1) INTERACTIVE UNIX System EDIT(1)
NAME
edit - text editor (variant of ex for casual users)
SYNOPSIS
edit [-r] [-x] [-C] name ...
DESCRIPTION
edit is a variant of the text editor ex recommended for new
or casual users who wish to use a command-oriented editor.
It operates precisely as ex(1) with the following options
automatically set:
novice ON
report ON
showmode ON
magic OFF
These options can be turned on or off via the set command in
ex(1).
-r Recover file after an editor or system crash.
-x Encryption option; when used, the file will be
encrypted as it is being written and will require an
encryption key to be read. edit makes an educated
guess to determine if a file is encrypted or not. See
crypt(1). Also, see the WARNING section at the end of
this manual page.
-C Encryption option; the same as -x except that edit
assumes files are encrypted.
The following brief introduction should help you get started
with edit. If you are using a CRT terminal you may want to
learn about the display editor vi.
To edit the contents of an existing file, you begin with the
command edit name to the shell. edit makes a copy of the
file that you can then edit, and tells you how many lines
and characters are in the file. To create a new file, you
also begin with the command edit with a filename: edit
name; the editor will tell you it is a New File.
The edit command prompt is the colon (:), which you should
see after starting the editor. If you are editing an exist-
ing file, then you will have some lines in edit's buffer
(its name for the copy of the file you are editing). When
you start editing, edit makes the last line of the file the
current line. Most commands to edit use the current line if
you do not tell them which line to use. Thus if you say
Rev. Editing Package Page 1
EDIT(1) INTERACTIVE UNIX System EDIT(1)
print (which can be abbreviated p) and type carriage return
(as you should after all edit commands), the current line
will be printed. If you delete (d) the current line, edit
will print the new current line, which is usually the next
line in the file. If you delete the last line, then the new
last line becomes the current one.
If you start with an empty file or wish to add some new
lines, then the append (a) command can be used. After you
execute this command (typing a carriage return after the
word append), edit will read lines from your terminal until
you type a line consisting of just a dot (.); it places
these lines after the current line. The last line you type
then becomes the current line. The command insert (i) is
like append, but places the lines you type before, rather
than after, the current line.
edit numbers the lines in the buffer, with the first line
having number 1. If you execute the command 1, then edit
will type the first line of the buffer. If you then execute
the command d, edit will delete the first line, line 2 will
become line 1, and edit will print the current line (the new
line 1) so you can see where you are. In general, the
current line will always be the last line affected by a com-
mand.
You can make a change to some text within the current line
by using the substitute (s) command: s/old/new/ where old
is the string of characters you want to replace and new is
the string of characters you want to replace old with.
The command file (f) will tell you how many lines there are
in the buffer you are editing and will say [Modified] if you
have changed the buffer. After modifying a file, you can
save the contents of the file by executing a write (w) com-
mand. You can leave the editor by issuing a quit (q) com-
mand. If you run edit on a file, but do not change it, it
is not necessary (but does no harm) to write the file back.
If you try to quit from edit after modifying the buffer
without writing it out, you will receive the message No
write since last change (:quit! overrides), and edit will
wait for another command. If you do not want to write the
buffer out, issue the quit command followed by an exclama-
tion point (q!). The buffer is then irretrievably discarded
and you return to the shell.
By using the d and a commands and giving line numbers to see
lines in the file, you can make any changes you want. You
should learn at least a few more things, however, if you
will use edit more than a few times.
The change (c) command changes the current line to a
sequence of lines you supply (as in append, you type lines
Rev. Editing Package Page 2
EDIT(1) INTERACTIVE UNIX System EDIT(1)
up to a line consisting of only a dot (.). You can tell
change to change more than one line by giving the line
numbers of the lines you want to change, i.e., 3,5c. You
can print lines this way too: 1,23p prints the first 23
lines of the file.
The undo (u) command reverses the effect of the last command
you executed that changed the buffer. Thus if you execute a
substitute command that does not do what you want, type u
and the old contents of the line will be restored. You can
also undo an undo command. edit will give you a warning
message when a command affects more than one line of the
buffer. Note that commands such as write and quit cannot be
undone.
To look at the next line in the buffer, type carriage
return. To look at a number of lines, type ^D (while hold-
ing down the control key, press d) rather than carriage
return. This will show you a half-screen of lines on a CRT
or 12 lines on a hardcopy terminal. You can look at nearby
text by executing the z command. The current line will
appear in the middle of the text displayed, and the last
line displayed will become the current line; you can get
back to the line where you were before you executed the z
command by typing ''. The z command has other options: z-
prints a screen of text (or 24 lines) ending where you are;
z+ prints the next screenful. If you want less than a
screenful of lines, type z.11 to display five lines before
and five lines after the current line. (Typing z.n, when n
is an odd number, displays a total of n lines, centered
about the current line; when n is an even number, it
displays n-1 lines, so that the lines displayed are centered
around the current line.) You can give counts after other
commands; for example, you can delete 5 lines starting with
the current line with the command d5.
To find things in the file, you can use line numbers if you
happen to know them. Since the line numbers change when you
insert and delete lines, this is somewhat unreliable. You
can search backward and forward in the file for strings by
giving commands of the form /text/ to search forward for
text or ?text? to search backward for text. If a search
reaches the end of the file without finding text, it wraps
around and continues to search back to the line where you
are. A useful feature here is a search of the form /^text/
which searches for text at the beginning of a line. Simi-
larly /text$/ searches for text at the end of a line. You
can leave off the trailing / or ? in these commands.
The current line has the symbolic name dot (.); this is most
useful in a range of lines as in .,$p which prints the
current line plus the rest of the lines in the file. To
move to the last line in the file, you can refer to it by
Rev. Editing Package Page 3
EDIT(1) INTERACTIVE UNIX System EDIT(1)
its symbolic name $. Thus the command $d deletes the last
line in the file, no matter what the current line is.
Arithmetic with line references is also possible. Thus the
line $-5 is the fifth before the last and .+20 is 20 lines
after the current line.
You can determine the current line by typing .=. This is
useful if you wish to move or copy a section of text within
a file or between files. Find the first and last line
numbers you wish to copy or move. To move lines 10 through
20, type 10,20d a to delete these lines from the file and
place them in a buffer named a. edit has 26 such buffers
named a through z. To put the contents of buffer a after
the current line, type put a. If you want to move or copy
these lines to another file, execute an edit (e) command
after copying the lines; following the e command with the
name of the other file you wish to edit, i.e., edit
chapter2. To copy lines without deleting them, use yank (y)
in place of d. If the text you wish to move or copy is all
within one file, it is not necessary to use named buffers.
For example, to move lines 10 through 20 to the end of the
file, type 10,20m $.
SEE ALSO
ed(1), ex(1), vi(1).
WARNING
The encryption options are provided with the Security
Administration Utilities package, which is available only in
the United States.
Rev. Editing Package Page 4