Chapter 20. Batch Editing

Why Line Editors Aren’t Dinosaurs

In the “old days,” when programmers worked on printing terminals, editing was done one line at a time. Editors that let you move a cursor around the screen to select text to edit hadn’t yet been invented, because there weren’t any screens to look at text on!

With ever more advanced WYSIWYG (What You See Is What You Get) word processors and editing programs, it’s easy for novices to think of line editors as a bizarre relic. Perhaps they are — but if so, they are a relic of extraordinary power.

You see, line editors lend themselves to scripting — the ability to write what in effect are editing programs that can be applied over and over to different files.

When we talk about “batch editing” or scripts, here are some of the programs you might use:

  • ed is the original Unix line editor.

  • ex supports a superset of ed commands; it is widely used from within vi, which is the ex “visual” or “screen” mode.

  • sed ( Section 34.1) is an editor that can only be run with scripts or by entering a few short commands as command-line arguments; while it has many similar commands, it has some important differences (Section 34.2) from ed and ex.

  • awk ( Section 20.10) is a great way to pull apart a line of text into a sequence of elements. Used frequently with sed.

  • patch ( Section 20.9) is a specialized editor designed to apply editing scripts created with diff (Section 11.1). You can do this with ed or ex as well, but patch is especially clever at ...

Get Unix Power Tools, 3rd Edition now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.