我想根据类别计算 .csv 文件中的学生人数
类别 1 是名称,类别 2 是国家/地区,类别 3 是城市
.csv 文件显示如下:
michael_s;jpa;NYC
john_d;chn;TXS
jim_h;usa;POP
当我执行脚本时
cat students.csv | ./script.sh PAR
它应该只显示 PAR 中的学生人数,而且当我执行脚本时,它还可以显示其他城市,例如 NYC、PAR 等
我做了什么:
cut -d";" -f3 students.csv | sort | uniq -c
它按出席的方式工作,但我需要它在执行脚本时显示其他城市以及后面的另一个城市
cat students.csv | ./script.sh PAR
133 NYC
或者
cat students.csv | ./script.sh NYC
107 NYC
答案1
为什么不直接这样做...
cat students.csv | grep $1 |wc -l
这可以进入脚本并运行为:
./myscript.sh NYC
你的整个脚本看起来像:
#/bin/bash
cat students.csv | grep $1 |wc -l
要获取带有计数的城市名称,您可以使用:
cat student.csv|grep $1|printf "$1 $(wc -l) \n"