如何从 Linux 命令行中找到给定目录中具有相同 exif 时间戳的所有图像组?
答案1
好吧,假设你正在使用出口工具和一个像这样的命令
exiftool -sep $'\t' -T -filename -createdate dir
这将打印目录中每个图像的一行dir
以及文件名及其创建时间戳。我不知道这是否是您想要的时间戳,但您随时可以更改该字段。
该命令的输出通过管道传输到此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
专家。可能有更优雅的方法来做同样的事情。