0

何千もの画像ファイルを含むフォルダーがあります。各ファイル名は YYYY-MM-DD で始まります。Date Created フィールドがファイル名の日付と一致する場合があります。各画像ファイルに対してこれを達成したいと思います:

ファイル名の YYYY-MM-DD が Date Created と一致しない場合、Date Created をファイル名の YYYY-MM-DD に設定し、Time Created を 11:11:11 (HH:MM:SS) に設定します。

どうすれば正確にこれを行うことができますか? 参考までに、私は Mac mini と OS X 10.9 を使用しており、車輪を回転させています。ご協力いただきありがとうございます!

4

1 に答える 1

0

次のようなシェル コマンドを使用できます。

for f in *; do if [[ $(date -jf %s $(stat -f%B "$f") +%F) != ${f:0:10} ]]; then SetFile -d ${f:5:2}/${f:8:2}/${f:0:4} "$f"; mtime=$(GetFileInfo -m "$f"); SetFile -m "${mtime:0:10} 11:11:11" "$f"; fi; done

SetFile と GetFileInfo は、Xcode の設定またはhttp://developer.apple.com/downloads/からダウンロードできる開発者ツール パッケージの一部です。

date コマンドで、-j は時刻の設定を無効にし、-f はフォーマット文字列を指定し、%F は 2013-12-31 のようなフォーマットです。stat -f はフォーマット文字列を指定し、%B は作成 (誕生) 時刻です。GetFileInfo と SetFile では、-m は変更時刻、-d は作成時刻です。

于 2013-11-02T19:23:52.820 に答える