标签:awk多行记录
我们所有的例子中用到的输入文件其记录都是由单独一行组成的。在这一部分,我们将演示如何读入一个记录,而记录中的每个字段都由单独一行组成。
前面我们了解了处理姓名和地址的文件的例子。让我们假设相同的数据保存在块格式的文件中。不是将所有的信息放置在一行,而是将人名放在一行,在下一行放置公司名、依此类推。下面是一个记录样本:
这个记录有6个字段,记录之间用空行分隔。为了处理这种包括多行数据的记录,我们可以将字段分隔符定义为换行符,换行符用"\n" 来表示,并将记录分隔符设置为空字符串,它代表一个空行。
我们可以使用下面的脚本来打印第一个和最后一个字段:
例子的运行结果如下:
这两个字段输出在同一行是因为默认的输出字段分隔符(OFS)仍然是一个空格。如果希望将这些字段输出在不同的行上,可以将OFS的值改变为一个换行符来实现。这样,你可能希望用空格将记录分隔开,因此必须将输出记录分隔符ORS设置为两个换行符。
参考资料:http://www.linuxawk.com/communication/497.html
标签:awk多行记录
原文地址:http://blog.csdn.net/xiyangyang052/article/details/46552357