AWK定义为列的是什么

时间:2014-07-23 14:58:53

标签: awk

我正在处理一个包含多个条目的文件:

name //filenameanddirectory score 0000000000000000000000000000100000000000001000000100000000000001000000100000010001011000000100000000000000000000000000000000000000000000000010000001000000000000000000000000000100000000000001000000000000000000000000000000000000000000000000000000010100001010000100000000000000000000000000000000000000000000000000000000000000000000000000000000000 0.107955 

我只需检索long 01条目中具有特定值的条目,我尝试了命令

awk '{if (substr($5,20,1)==1) printf "%s %s %.3f %.4f %s\n",$1,$2,$3,$4,$5} inputfile.txt > outputfile.txt

不幸的是,我没有得到任何结果,是否有人知道可能导致问题的原因?

1 个答案:

答案 0 :(得分:1)

在awk字段中,默认情况下由空格序列(空格,TAB和换行符)分隔,因此定义了列。两个连续字段分隔符之间的值取一列。 如果你明确想要定义字段分隔符,可以通过在awk中设置FS来完成。