根据目录中文件的日期重命名目录

根据目录中文件的日期重命名目录

我正在寻找一种智能方法来根据照片拍摄日期批量重命名照片库中的目录。

我的具体用例:将图像库从 OS X 上的 iPhoto 或 Aperture 导出到更永久且独立于操作系统的文件和文件夹结构。

输入的目录列表如下所示:

1.2.2012
input_directory_name

重命名的输出应如下所示:

2012-02-01 - 2012-02-22
2012-03-14 - 2012-03-14 input_directory_name

日期应从目录中图片的创建日期(最旧/最新日期)或从文件的元数据(JPEG、TIFF、RAW...)中选取。

如果 input_directory_name 看起来像日期“1.2.2012”,那么应该跳过它。

如果 input_directory_name 包含文本,则应将文本添加到新目录名称中。原因:iPhoto / Aperture 中的未命名事件会自动标记日期,不幸的是,该日期的排序顺序很糟糕:DD.MM.YYYY

我用谷歌搜索了一下,但无法轻易找到一个聪明的方法 - 可能其他人以前遇到过这个问题?

答案1

首先:如果您要尝试解决方案,请使用完整副本或图片子集的副本以避免灾难。

您可以尝试以下方法:

for folder in $(ls -l | awk '{print $9}'); 
    do <magic here>;
done

identify如果您可以使用该命令,那么魔法可能就像使用该命令一样。据我所知,它可以从图片中读取 exif 数据。基于此,您也许可以创建一个文件夹或移动目录等。

相关内容