由于从我第一次提问时不知道的前两个答案和评论中学到的东西,这个问题被完全重写。
拍完照片后,我带着看起来像_DSC1234.NEF
. NEF
是尼康的相机原始文件格式,因此文件EXIF
中存在数据。
我想用三个部分自动重命名它们:
YYYYMMDD
所以最终的文件名应该是这样的
20140707_NameOfShoot_0001.NEF
有几个问题:
ad 1.创建日期
有时我只能在拍摄后几天复制和重命名文件,所以日期应该反映照片的拍摄日期,而不是复制日期。mtime
似乎是最好的选择,或者如果可能的话,创建日期从EXIF
.
广告 2:拍摄名称 理想情况下,这将是一个变量,我可以在调用脚本时将其设置为参数。
广告 3. 图像数量
这应该反映图像的年龄,最旧的数字最小。问题是相机通常会在点击0000
后重新开始编号9999
。所以9995-9999
可能比0000-0004
. 我正在寻找反映文件年龄的解决方案,在这种特殊情况下会重命名
同样,mtime
如果可能的话,创建日期EXIF
似乎是正确的。
从这里我有一个工作解决方案,它按日期重命名文件夹中的所有 .NEF 文件:
find -name '*.NEF' |
gawk 'BEGIN{ a=1 }{ printf "mv …
Run Code Online (Sandbox Code Playgroud)