linux查看图片的拍摄时间,提取照片的 EXIF 日期时间作为文件名

本文介绍了如何在Linux环境下批量重命名照片,通过提取EXIF中的DateTimeOriginal信息,创建有序且无重复的文件名。利用ImageMagick的identify命令获取照片拍摄时间,并使用sed进行字符串处理,生成新的文件名格式。最后给出批处理代码示例,确保在执行前进行小范围测试。
摘要由CSDN通过智能技术生成

汇总了来自几个人一起旅行所拍摄的所有照片之后遇到的一个问题就是,不同设备的命名方式不同,或者相同的话就可能会有照片文件重名的问题。这样非常不利于浏览挑选照片。所以就想将所有的照片重新命名一下。命名的规则就是 __。这些信息可以通过提取照片的 EXIF 信息得到。当然手工重命名上千张照片是难以完成的,于是就有了下面的批处理代码。

我个人对于命令行的批处理是非常不熟悉的,仅仅是知道有这么个东西。在查阅了一些博文(ref1, ref2, ref3)后终于能够顺利完成这个工作了。只是代码质量可能就不堪入目了,仅仅是凑合能用。

提取 EXIF 信息

因为用的是 Linux(openSUSE Tumbleweed),这方面的工具真的是很齐全。比如 ref1 中提到的 jhead,ref2 中提到的 ImageMagick 中的 identify 等。我所用的系统中刚好默认就安装了 ImageMagick,于是用 identify 试了试,

# identify -verbose IMG_5045.JPG | grep "DateTime"

exif:DateTime: 2016:09:07 11:17:39

exif:DateTimeDigitized: 2016:09:07 11:17:39

exif:DateTimeOriginal: 2016:09:07 11:17:39

出现了 3 条信息,而我们只需要 1 条。于是就修改一下指令,

# identify -verbose IMG_5045.JPG | grep "DateTimeOriginal"

exif:DateTimeOriginal: 2016:09:07 11:17:39

下面要做的就是把返回结果中的日期时间提取出来,改成 20160907_1117

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值