exiftool用相机模型和日期重命名照片

时间:2015-03-03 15:23:27

标签: bash shell camera exif exiftool

我一直在整理我的家庭照片,其中包括一些来自我父亲的恢复备份驱动器。许多照片都被命名为file000268.jpg等,所以我考虑重命名实用程序,最后使用exiftool,因为我可以在shell中使用它并编写基于它的脚本(我使用Mac和Ubuntu)。 我有一个简单的脚本工作,将照片重命名为拍摄日期并且效果很好,但我想在日期前添加相机品牌/型号,这很容易帮我识别我父亲的照片与来自他的平面设计客户的照片(我知道我的父母有一台柯达相机)。

以下是使用日期重命名照片的工作脚本:

exiftool '-FileName<DateTimeOriginal' -d "%Y-%m-%d %H.%M.%S%%-c.%%e" /directory/ 

这导致照片命名如下:

&#39; 2002-12-16 14.20.56.jpg&#39;

我只想在年份前添加相机品牌/型号:

&#39; SONY CYBERSHOT 2002-12-16 14.20.56.jpg&#39;

在此先感谢您提供任何帮助,我一直在进行大量的Google搜索并且非常困惑。

1 个答案:

答案 0 :(得分:9)

从exiftool v9.69联机帮助页:

exiftool '-filename<%f_${model;}.%e' dir
  

重命名&#34; dir&#34;中的所有文件通过将相机型号名称添加到文件名中。大括号内的标记名称后面的分号会导致从标记值中删除Windows文件名中无效的字符(有关说明,请参阅-p选项文档)。

在您的情况下,您可以在初始重命名后第二次运行exiftool

exiftool '-filename<${model;} %f.%e' /directory/

或者一体化:

exiftool '-filename<${model;} ${datetimeoriginal}' -d "%Y-%m-%d %H.%M.%S%%-c.%%e" /directory/