群晖moments套件识别拍摄日期为1970错误的解决方法

本文分享了如何在OPPO手机上使用脚本修正Moments套件中因MODIFYDATE导致的照片时间显示问题,通过图片文件名时间重置,避免手动修改数百张照片的困扰。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

moments套件很好用。之前自己的手机用DS_FILE同步到服务器的相册里,然后用MOMENTS打开共享相册来查看图片,体验拉爆。但是在同步媳妇儿的手机时,发现时间线里同步的几千张照片全部塞到了1970年下面。经过对比,PHOTOS套件里的照片时间可以正常显示。那么为什么MOMENTS中就不行呢。

测试发现,有可能是OPPO手机的缘故,同步上来的照片修改日期全部是1970年1月1日。

这应该就是问题所在了。MOMENTS套件获取照片日期用的是MODIFY DATE,那么这样一索引,肯定就全部弄到1970年去了。

MOMENTS界面上是提供修改拍摄日期的功能的。但是这样一张一张改我不改到明年过年了。不如写脚本把图片文件的日期直接改了

说干就干

先捞出来几张图片做测试

大概就是这几种格式了。由于中间出了问题。后面的视频并没有同步,先把图片文件解决了再说吧。 观察到图片名上面是包含时间的。那么就用图片名的时间来设置文件修改时间。

先截掉前面的字符

tt=${file#*IMG}
tt=${tt#*Screenshot_}

再取文件名的时间并截掉后缀

 tt2=${tt%%.jpg}
    year=${tt2:0:4}
    month=${tt2:4:2}
    day=${tt2:6:2}
    hour=${tt2:8:2}
    min=${tt2:10:2}
    sec=${tt2:12:2}
    tt3="${year}-${month}-${day} ${hour}:${min}:${sec}"

最后修改文件时间,这里直接修改了atime和mtime

touch $file -d "${tt3}"

看一下效果

完美

最后不要忘了在MOMENTS的设置那里重建索引

脚本下载:

群晖moments套件识别拍摄日期为1970错误的解决方法脚本文件-Linux文档类资源-CSDN下载

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值