Long before vi or any other screen editor was invented, people communicated with computers on printing terminals, rather than on today’s CRTs (or bitmapped screens with pointing devices and terminal emulation programs). Line numbers were a way to quickly identify a part of a file to be worked on, and line editors evolved to edit those files. A programmer or other computer user would typically print out a line (or lines) on the printing terminal, give the editing commands to change just that line, and then reprint to check the edited line.
People don’t edit files on printing terminals anymore, but some ex line editor commands are still useful to users of the more sophisticated visual editor built on top of ex. Although it is simpler to make most edits with vi, the line orientation of ex gives it an advantage when you want to make large-scale changes to more than one part of a file.
Many of the commands we’ll see in this chapter have filename arguments. Although it’s possible, it is usually a very bad idea to have spaces in your files’ names. ex will be confused to no end, and you will go to more trouble than it’s worth trying to get the filenames to be accepted. Use underscores, dashes, or periods to separate the components of your filenames, and you’ll be much happier.
Before you start off simply memorizing ex commands (or worse, ignoring them), let’s first take some of the mystery out of line editors. Seeing how ex works when it is invoked directly will help make ...