O'Reilly logo

Linux® Command Line and Shell Scripting Bible by Richard Blum

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Chapter 18. Advanced sed

IN THIS CHAPTER

  • Digging deeper with sed

  • Handling multiple lines

  • Holding lines

  • Branching with labels

  • Using sed in scripts

Chapter 16 showed 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, 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 to detect how the phrase was split.

Fortunately, ...

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required