web-dev-qa-db-ja.com

同じexifタイムスタンプを持つ画像を検索する

Linuxのコマンドラインから、特定のディレクトリで同じexifタイムスタンプを持つすべての画像グループを見つけるにはどうすればよいですか?

1
student

さて、あなたが exiftool と次のようなコマンドを使用しているとしましょう

exiftool -sep $'\t' -T -filename -createdate dir

これにより、ディレクトリdirの画像ごとに1行が、ファイル名とその作成タイムスタンプとともに出力されます。これがあなたが考えていたタイムスタンプであるかどうかはわかりませんが、いつでもそのフィールドを変更できます。

そのコマンドの出力をこのawkコマンドにパイプします

awk 'BEGIN { OFS = "\t" }{ datetime = $2 " " $3 } { files[datetime] = files[datetime] " " $1 } END { for (time in files) print time ":" files[time] }'

...そのようです...

exiftool -sep $'\t' -T -filename -createdate dir | awk 'BEGIN { OFS = "\t" }{ datetime = $2 " " $3 } { files[datetime] = files[datetime] " " $1 } END { for (time in files) print time ":" files[time] }'

そして、あなたはフォームの出力を得るでしょう

2016:05:05 00:52:03: IMG_0990.JPG IMG_0962.JPG
2016:05:05 00:51:23: IMG_0965.JPG
2016:05:05 00:48:36: IMG_0956.JPG IMG_0966.JPG IMG_0969.JPG

注:わかりやすくするために、画像のファイル名にはスペースやその他のファンキーさが含まれていないと想定しています。

免責事項:私はawkの専門家ではありません。同じことをするもっとエレガントな方法があるかもしれません。

2
B Layer