Manipulating the awk record separator to report on XML data
So far, while we have been working with awk we have limited ourselves to working with individual rows, with each new row representing a new record. Although this is often what we want, where we work with tagged data, such as XML where an individual record may span multiple lines. In this case, we may need to look at setting the RS
or record
separator internal variable.
Apache Virtual Hosts
In Chapter 9, Automating Apache Virtual Hosts we worked with
Apache Virtual Hosts. This uses tagged data that defines the start and end of each Virtual Host. Even though we prefer to store each Virtual Host in their own file, they can be combined into a single file. Consider the following file that stores the possible Virtual Host definitions, this can be stored as the virtualhost.conf
file, as shown:
<VirtualHost *:80> DocumentRoot /www/example ServerName www.example.org # Other directives here </VirtualHost> <VirtualHost *:80>...