Chapter 20
Advanced sed
In This Chapter
- Multiline commands
- The hold space
- Negating a command
- Changing the flow
- Pattern replacement
- Using sed in scripts
- Creating sed utilities
Chapter 18 showed you how to use the basics of the sed editor to manipulate text in data streams. The basic sed editor commands are capable of handling most of your everyday text-editing requirements. This chapter takes a look at the more advanced features that the sed editor has to offer. These are features that you might not use as often, but when you need them, it's nice to know that they're there and how to use them.
Multiline Commands
When using the basic sed editor commands, you might have noticed a limitation. All of the sed editor commands perform functions on a single line of data. As the sed editor reads a data stream, it divides the data into lines based on the presence of newline characters. The sed editor processes each line of data one at a time, processing the defined script commands on a line of text, and then moving on to the next line and repeating the process.
There are times when you need to perform actions on data that spans more than one line. This is especially true if you're trying to find or replace a phrase.
For example, if you're looking for the phrase Linux System Administrators Group in your data, it's quite possible that the phrase can be split into two lines between any of the words in the phrase. If you processed the text using a normal sed editor command, it would be impossible ...