#このスクリプトは、課題2のスクリプトを実行するための準備段階のスクリプトである。 #具体的には、与えられた「kadai2_data」に含まれるバラバラの気象データとその日時を、新規に作成した「kadai2matome_data」にまとめることを行う。 #このスクリプトを実行するのは1回のみに限る。複数回実行してはいけない。 #以下、スクリプト本文 #!/bin/bash #はじめに、与えられた「kadai2_data」の内容をすべて「kadai2matome_data」にコピーする。 cp -r -f ./kadai2_data ./kadai2matome_data #ただしデータをまとめる際、年と月は異なるが、日が同じデータは区別がつかなくなってしまう。これを、各データの行の末尾に、それぞれの年と月を挿入することで解決する。 #「kadai2matome_data」の中身を検索する。 for xyz in `find ./kadai2matome_data/*` #「kadai2matome」中身である、「.csv」の拡張子をもつ全てのファイルの名前をそれぞれ変数$xyzに代入しながら、次のコマンドを実行する。 do #変数xyz、すなわちファイル名から、「/」を区切りとして3つ目の区分を取り出し、変数csvに代入する。 csv=`echo $xyz | cut -d / -f 3` #変数csvの名前から「.」を区切りとして一つ目の区分を取り出し、変数dateに代入する。 date=`echo $csv | cut -d . -f 1` #変数dateの名前から「-」を区切りとして一つ目の区分(すなわち「年」)を取り出し、変数yearに代入する。 year=`echo $date | cut -d - -f 1` #変数dateの名前から「-」を区切りとして二つ目の区分(すなわち「月」)を取り出し、変数monthに代入する。 month=`echo $date | cut -d - -f 2` #変数xyz、つまり「.csv」の拡張子をもつファイルの各行の末尾に「年」と「月」を挿入する。 sed -i -e "s/$/,$year ,$month/" $xyz done