作者热门文章
- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我必须显示我输入的 csv 文件中与“CD”匹配的列的记录数。值(value) CD 出现在我的文件 input.csv 的第二列中。
我正在尝试使用以下命令,但它没有按预期工作。
awk -F',' '$2=/CD/ { count++ } END { print count }' input.csv
我的输入数据:
1234,CD,xyz,abcd
01235,AB,kasdjk,aaaaa,fff
898,CD,laklksas,lsjdjdj,lkjsaj
111,CD,lkakskaks,jjjjjj
3455,00,ksajkjsa,kkkkk
59995,99,asllsal,99898,00,kkk,99
99,00,lkjjjsa,00,99,hhhh
预期输出:
3 if i check the count of "CD"
2 if i check the count of "00"
最佳答案
与正则表达式匹配的运算符是~
,而不是=
。
awk -F',' '$2 ~ /CD/ { count++ } END { print count }' input.csv
如果你想进行精确匹配,而不是正则表达式,请使用 ==
和一个字符串:
awk -F',' '$2 == "CD" { count++ } END { print count }' input.csv
=
用于分配,而不是比较。
关于linux - 如何在 linux 中使用 awk 命令获取与特定值匹配的列的记录数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31401256/
我是一名优秀的程序员,十分优秀!