Macで、1つのフォルダの中に入っている複数の画像ファイルの変更日を変更できないか試してみました。
やりたいことは、ファイル1つずつ1分単位でずらした変更日時を設定するというもの。
001.jpg → 2000/01/01 00:01:00
002.jpg → 2000/01/01 00:02:00
003.jpg → 2000/01/01 00:03:00
・・・
060.jpg → 2000/01/01 01:00:00
061.jpg → 2000/01/01 01:01:00
こんな感じ。
Mac の Automator アプリを立ち上げて、シェルスクリプトを使います。
【UpdateEdit.app】
cd "$1"
FILE_EXSIT_FLG=0
for pathfile in `find -P ./ -type f -maxdepth 1 -iname "*.jpg" -o -iname "*.png"`; do
FILE_EXSIT_FLG=1
done
find "$1" -type d | sort | while read FILE01
do
if [ "${FILE_EXSIT_FLG}" = 0 ]; then
if [ "$1" = "${FILE01}" ]; then
continue
fi
fi
cd "${FILE01}"
cnt=0
for file in *
do
mv "$file" "tmp_$file"
done
for file in *
do
cnt=`expr $cnt + 1`
h=0
m=0
if [ `expr $cnt / 60` -gt 0 ] ; then
h=`expr $cnt / 60`
m=`expr $cnt % 60`
else
m=$cnt
fi
h0="0$h"
m0="0$m"
h00=`echo $h0 | rev | cut -c 1-2 | rev`
m00=`echo $m0 | rev | cut -c 1-2 | rev`
/usr/local/bin/exiftool -P -overwrite_original -alldates="2000:01:01 ${h00}:${m00}:00" "$file"
touch -t "20000101${h00}${m00}" "$file"
cnt0="00$cnt"
cnt00=`echo $cnt0 | rev | cut -c 1-3 | rev`
ext=${file##*.}
mv "$file" "$cnt00.$ext"
done
done
echo "finish!"
この、UpdateEdit.app に、画像の入ったフォルダをドラッグ&ドロップすれば、中の画像の更新日が1分ずつズラして設定されます。
【追記】ファイル名も連番にする時のスクリプトを追加
cnt0="00$cnt"
cnt00=`echo $cnt0 | rev | cut -c 1-3 | rev`
ext=${file##*.}
mv "$file" "$cnt00.$ext"
【追記】exiftool を使った日時変更追加
/usr/local/bin/exiftool -P -overwrite_original -alldates="2000:01:01 00:00:00" "$file"