计算文件中每行的某个单词的数字

use*_*846 0 bash awk grep

我有一个文件看起来像

旧数据

alireza,mahdi,alireza,mohammad
alireza,olivia,amireza,hasan
alireza,alireza,alireza,alireza
Run Code Online (Sandbox Code Playgroud)

新数据

0.54:30.36:N    0.54:32.31:N     0.54:30.36:Y
0.54:30.36:Y    0.54:32.31:N     0.54:30.36:Y
0.54:30.36:N    0.54:32.31:N     0.54:30.36:Y
0.54:30.36:N    0.54:32.31:N     0.54:30.36:N
Run Code Online (Sandbox Code Playgroud)

我想算一下每行说"Y"的数量,

所以输出就是

1
2
1
0
Run Code Online (Sandbox Code Playgroud)

所以我可以像"grep -w":Y'myfile'那样grep它,但后来我不知道怎么算!从那以后......

**更新我很抱歉更改数据和可能的模式.我想呈现一种简单易懂的格式,但我没有成功.我再次道歉.

Ed *_*ton 5

这是一种惯用的awk方式来打印每行上RE的次数:

$ awk '{print gsub(/:Y/,"")}' file
1
2
1
0
Run Code Online (Sandbox Code Playgroud)