我正在尝试仅使用 awk 命令打印 .csv 文件中某个字段的出现次数。例如在像这样的文件 test.csv 中:
layla;rebel;TAT
han_solo;rebel;TAT
darth_vader;empire;DKS
yoda;rebel;TAT
Run Code Online (Sandbox Code Playgroud)
使用命令:
cat test.csv | ./how_many_are_we.sh dks
Run Code Online (Sandbox Code Playgroud)
我希望有以下输出:
1
Run Code Online (Sandbox Code Playgroud)
这是我在 how_many_are_we.sh 中的代码(工作正常但区分大小写):
#! /bin/bash
awk -F ";" -v location=$1 'BEGIN {count=0;} { if ($3 == location) count+=1} END {print count}'
Run Code Online (Sandbox Code Playgroud)
我尝试IGNORECASE=1在不同的地方添加,但我似乎无法找到正确的方法来使它工作。
请原谅我的措辞不好,并感谢您的帮助。