我正在尝试根据特定列的值过滤文件,忽略标题行。
我试过的命令:
awk '(NR = 1) || \
(($7>=0.8) && ($13>-0.8) && ($19>=0.8) && \
($25>=0.8) && ($31>=0.8) && ($37>=0.8) && \
($39=3) && ($40=3))' infile.txt > outfile.txt
当我运行它时,得到的outfile.txt与infile.txt完全相同,即使我已经检查了第7,13,19,25,31和37列中infile.txt中的值低于0.8,同样,第39栏和第40栏中的值低于3.
有人可以帮我解决一下吗?
谢谢!
ADIP
包含了一个示例infile.txt,其中包含我的一个文件的前几行:
https://drive.google.com/file/d/0B8LuZenMuFYGekZwd1dpcks2Tkk/view?usp=sharing
答案 0 :(得分:2)
被迫将评论转换为答案。 ; - )
你在awk中犯的两个错误可能会解决你的问题:
将NR = 1
更改为NR==1
和
将($39=3) && ($40=3)
更改为$39==3 && $40==3
回家消息:分配=
和比较==
之间存在差异。