#!/bin/bash mkdir /home/yot/itpass/2013/test_okazaki/kadai1_data_new/ mkdir /home/yot/itpass/2013/test_okazaki/kadai1_data_new/01 #リネームした画像ファイルを入れるためのディレクトリを作成. i=1 while [ "$i" -le 7 ] #iを1から7まで順に増やしていく. do cd /home/yot/itpass/2013/test_okazaki/kadai1_data/01/0$i #ITPASS実習課題のページから入手したデータは自分のホームディレクトリに置かれているとする.データは01/01~07とディレクトリに分けられているため,それぞれのディレクトリの中に移動する. for loop in '*.jpg' #ディレクトリ内の全てのjpgファイルについて,loopという変数に代入する.(「*.jpg」は「.jpg」とつく任意のファイルを指す) do cp $loop /home/yot/itpass/2013/test_okazaki/kadai1_data_new/01 #画像ファイルを新しく作ったディレクトリにコピーする. done i=`expr $i + 1` #iに1を足して次のディレクトリの中へ,を7まで繰り返す. done cd /home/yot/itpass/2013/test_okazaki #ホームディレクトリに移動 ls -1 /home/yot/itpass/2013/test_okazaki/kadai1_data_new/01 > list.lst #画像ファイルをコピーしたディレクトリの中身を一覧表示する.このリストをlist.lstとして保存する. cd /home/yot/itpass/2013/test_okazaki/kadai1_data_new/01 #画像データの入っているディレクトリに移動. j=1 #変数jを1から始める while read line #あとで指定するリストを1行ずつ読んで最後の行まで処理を繰り返すように指示. do mv ${line} $j.jpg; #${line}はその行に書いてあるものを変数として扱う.ここでは,画像のファイル名で上から順に1.jpg,2.jpg…とリネームしていく. j=`expr $j + 1` #jを一つ増やして同じ処理を繰り返す. done