我有一个包含5列的CSV文件,名为“in.csv”:
2,3,4,5,6
12,11,13,4,44
我想使用一些智能Linux命令检查每列,列(1)+列(2)==列(3)和列(4)==列(5)是否成立。
答案 0 :(得分:2)
我们将此作为样本输入:
$ cat in.csv
2,3,4,5,6
12,11,13,4,44
2,3,5,8,8
2,3,5,8,9
这将打印"列(1)+列(2)==列(3)和列(4)==列(5)的所有行#34; :
$ awk -F, '$1+$2==$3 && $4==$5' in.csv
2,3,5,8,8
这将打印"列(1)+列(2)==列(3)" 保留而忽略第4列和第5列的所有行:
$ awk -F, '$1+$2==$3' in.csv
2,3,5,8,8
2,3,5,8,9
这将打印" column(1)+ column(2)== column(3)" 为false的所有行:
$ awk -F, '$1+$2!=$3' in.csv
2,3,4,5,6
12,11,13,4,44