zipファイルの内容を制御ファイルの内容と照合する簡単なスクリプトを作成しました。
正常に動作しますが、スペースが含まれているファイルを受信すると、エラー(実際には存在しません)で失敗します。これは私のコードのスニペットです(name
ZIPファイルを一括処理するために作成された配列です)。
echo "`date '+%m/%d/%y %T:'` List ZIP file contents."
LIST_Array=(`/usr/bin/unzip -l $name | head -n -2|tail -n +4 | sort -r | awk '{print $4}'`)
LISTlen=${#LIST_Array[*]}
#iterate array to 1) build report and 2) look for control file
echo "`date '+%m/%d/%y %T:'` Iterate array to 1) build report and 2) look for control files."
echo -e "`date '+%m/%d/%y %T:'` Files in ZIP file: $name\n" >> $name.report.out
for (( i = 0 ; i < ${#LIST_Array[@]} ; i++ ))
do
echo -e "${LIST_Array[$i]}" >> $name.report.out
done
ZIP内のファイルのリストがキャプチャされ$name.report.out
、制御ファイル自体の内容と比較されます。
スペースのあるファイルを正しく表示するにはどうすればよいですか?私echo -e
は助けになるでしょうが、それは一見効果がないようです。
ありがとう。