由于从我第一次提问时不知道的前两个答案和评论中学到的东西,这个问题被完全重写。
拍完照片后,我带着看起来像_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)