深入探索 Awk 输出控制与重定向技巧
1. 输出分隔符
在 Awk 中, print 语句里的项目通常由逗号分隔。在输出时,这些项目默认以单个空格分隔,但这并非固定不变,单个空格只是默认设置。我们可以通过设置预定义变量 OFS (Output Field Separator)来使用任意字符串作为输出字段分隔符,其初始值为单个空格。
整个 print 语句的输出被称为一个输出记录。每个 print 语句输出一个输出记录后,会接着输出一个名为输出记录分隔符(ORS,Output Record Separator)的字符串,其初始值为换行符 \n ,所以每个 print 语句通常会另起一行。
若要改变输出字段和记录的分隔方式,可给 OFS 和 ORS 变量赋予新值。常见的做法是在 BEGIN 规则中进行设置,确保在处理任何输入之前就完成更改。也可以在命令行上进行赋值,或者使用 -v 命令行选项。示例如下:
$ awk 'BEGIN { OFS = ";"; ORS = "\n\n" }
> { print $1, $2 }' mail-list
Amelia;555-5553
Anthony;555-3412
Becky;555-7685
Bill;555-1675
Brode
超级会员免费看
订阅专栏 解锁全文
39

被折叠的 条评论
为什么被折叠?



