#!/bin/bash name=() ave=() a=0 b=0 for filepath in `ls kadai1_data/*.csv` do if [ $filepath = Kobe.csv ] ; then name[$a]=`awk -F, 'NR==3 { print $2 }' Kobe.csv` ave[$b]=`awk -F, 'NR>10 { x+=$12 } END { print x/365 }' Kobe.csv` a=$(($a+1)) b=$(($b+1)) elif [ $filepath = Kagoshima.csv ] ; then name[$a]=`awk -F, 'NR==3 { print $2 }' Kagoshima.csv` ave[$b]=`awk -F, 'NR>10 { x+=$12 } END { print x/365 }' Kagoshima.csv` a=$(($a+1)) b=$(($b+1)) #ファイルを読み込んで、三行目の二列目にある県名データと10列目以降の12行目にある平均気温のデータを取り出す。平均気温は一年分取り出して365で割ることによって一年の平均気温を出している else name[$a]=`awk -F, 'NR==3 { print $2 }' $filepath` ave[$b]=`awk -F, 'NR>10 { x+=$2 } END { print x/365 }' $filepath` a=$(($a+1)) b=$(($b+1)) fi done #神戸と鹿児島以外は取り出す行が同じであるから最後にelseでまとめている nameave=() l=0 while [ $l -lt 47 ] do nameave[$l]=" ${name[$l]} ${ave[$l]}℃" l=$(($l+1)) done #平均気温と県名を並べたものを変数としておく nameave2=(`for v in "${nameave[@]}"; do echo "$v"; done | sort -k2 -n -r`) s=0 t=0 while [ $t -lt 10 ] do echo "$(($t+1))位 ${nameave2[$s]} ${nameave2[$(($s+1))]}" s=$(($s+2)) t=$(($t+1)) done #平均気温が高いものから順に並び替えて、順位とともに出力している