#!/bin/sh echo > quiz1.txt #quiz1.txtを常に空の状態にしておきます。 for i in dat/*.dat #変数iに dat/001.datからdat/100まで順に代入する do for j in dat/*.dat #変数jに dat/001.datからdat/100まで順に代入する do diff $i $j > /dev/null #ファイル$iと$jを比べて、/dev/null に出力する if [ $? -eq 0 -a "$i" != "$j" -a `basename $i .dat` -lt `basename $j .dat` ] #diffの返り値が0(真)かつ、$iと$jが違うファイル名であり、 #さらにbasenameというコマンドを使ってファイル名から数値のみを取り出し、$iの数値が$jの方より小さけらば以下を実行する。 then m=`basename $i` n=`basename $j` #"$i","$j"の文字列からディレクトリを取り外す。 echo "$m $n" >> quiz1.txt #実行結果をquiz2.txtに表示する。 fi done done