home | O'Reilly's CD bookshelfs | FreeBSD | Linux | Cisco | Cisco Exam  

UNIX Power Tools

UNIX Power ToolsSearch this book
Previous: 32.13 An Absurd Amusement Chapter 33 Next: 33.2 Writing Editing Scripts

33. Batch Editing

33.1 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 weren't invented, because there weren't any screens to look at text on!

In these days of even more advanced WYSIWYG (What You See Is What You Get) word processors an 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 is an editor that can only be run with scripts [or by entering a few short commands as command-line arguments - JP  ]; while it has many similar commands, it has some important differences ( 34.1 ) from ed and ex .

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

Of course, editing is a continuum, and beyond sed , you can think of awk ( 33.11 ) and perl ( 37.1 ) as even more powerful editing programs.


Previous: 32.13 An Absurd Amusement UNIX Power Tools Next: 33.2 Writing Editing Scripts
32.13 An Absurd Amusement Book Index 33.2 Writing Editing Scripts

The UNIX CD Bookshelf Navigation The UNIX CD BookshelfUNIX Power ToolsUNIX in a NutshellLearning the vi Editorsed & awkLearning the Korn ShellLearning the UNIX Operating System