awk FIELDWIDTHS如何工作

时间:2016-03-18 13:03:39

标签: awk gnu

几天前我开始学习awk编程(有效的awk脚本)。在第102页,作者正在解释字段宽度,但我不明白它是如何工作的。请有人向我解释一下,如何使用fieldwidths吗?

1 个答案:

答案 0 :(得分:11)

  

FIELDWIDTHS 以空格分隔的字段宽度列表。设定时   gawk将输入解析为固定宽度的字段,而不是使用   FS变量的值作为字段分隔符。

我认为一个例子更好地解释它是如何工作的:

$ echo "aaabbbbcccccdddddd"|awk -v FIELDWIDTHS="3 4 5 6" '{for(i=1;i<=NF;i++)print $i}'    
aaa
bbbb
ccccc
dddddd

当很难找到记录的FS时,它很有用,但记录有固定长度的字段。