.csvのカテゴリ内の名前の数を数える.shスクリプト

.csvのカテゴリ内の名前の数を数える.shスクリプト

カテゴリに基づいて.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"

おすすめ記事