用于搜索csv文件列的Bash脚本,并计算值显示的次数

1 csv bash counter

我真的是一个新的bash,我试图在csv文件列中搜索一个值,然后添加一个计数器.我在网上找到了这个,但它打印出来,我一直在试图计算出来的次数R,而不是打印出来的东西.

awk -F "\"*,\"*" '{print $2}' $file
Run Code Online (Sandbox Code Playgroud)

csv文件如下:

12345,R,N,N,Y,N,N,N,Bob Builder
Run Code Online (Sandbox Code Playgroud)

R在第2栏中寻找.有人能指出我正确的方向吗?

Law*_*man 5

以下应该做你想要的(file.csv是你的csv文件):

区分大小写:

cut -f 2 -d , file.csv | grep -c R
Run Code Online (Sandbox Code Playgroud)

不区分大小写的版本:

cut -f 2 -d , file.csv | grep -ic R
Run Code Online (Sandbox Code Playgroud)

说明

cut -f 2 -d , file.csv 这将获取每一行file.csv并提取指定的字段.该-f 2选项意味着提取字段2,并且该-d ,方法使用' ,'作为字段分隔符.然后通过管道输出grep.

grep -c R这会查找包含"R"的行.由于传递了上一个cut命令的内容,因此它在字段2中查找"R".该-c选项意味着计算匹配行的数量.