3.3.4.3 设置字段分隔字符
在一些简单程序中,你可以使用 -F 选项修改字段分隔字符。显示 /etc/passwd 文件里的用户名称与全名,你可以使用:
awk -F: '{ print $1,$5 }' /etc/passwd
-F 选项会自动地设置 FS 变量。请注意,程序不必直接参照 FS 变量,也不用必须管理读取的记录并将他们分隔为字段:awk 会自动完成这些事。
你可能已经发现,每个输出字段是以一个空格来分隔的 -- 即便是输入字段的分隔字符为冒号。awk 的输入、输出分隔字符用法是分开的,这点与其他工具程序不同。也就是说,必须设置 OFS 变量,改变输出字段分隔字符。方式是在命令行里使用 -v 选项,这会设置 awk 的变量。其值可以是任意的字符串。例如:
awk -F: -v 'OFS=**' '{ print $1,$5 }' /etc/passwd
稍后就可以看到设置这些变量的其他方式。或许那些方式更易于理解,根据你的喜好而定。