#!/bin/bash if [ "$(ls ./kadai2_data/all*)" != '' ]; then rm ./kadai2_data/all* fi #過去にスクリプトを実行したことがある場合、上記のファイルが存在するのでまず削除する。 for XX in 05 06 07 08 09 10 11 12 13 14 do cat ./kadai2_data/20$XX* | sed -e 's/)//g' | sed -e 's/}//g' > ./kadai2_data/all_20$XX.csv done #)と}を取り除き、2005年から2014年までの月ごとの気象データを年ごとにまとめたファイルを作成する。 echo '表示したい値の番号を入力してください' echo '1.猛暑日の日数 2.真夏日の日数 3.夏日の日数' read number #入力された値を読み込む。 case $number in 1) x=35.0 ;; 2) x=30.0 ;; 3) x=25.0 ;; *)echo '1,2,3のいずれかを入力してください' exit ;; #温度が35,30,25以上の場合と、指定項目以外が入力された場合とで場合分けする。 esac for XX in 05 06 07 08 09 10 11 12 13 14 do echo 20$XX年 `cat ./kadai2_data/all_20$XX.csv | awk -F, '{if($8 >= '$x'){print $8}}' | wc -l ` '日' done #forを用いて各年について同様の処理をする。 #年ごとのデータから最高気温が記されている8列目の数値の中でx以上のものを抽出して、その行数をカウントし結果を日数として表示する。