我有 3 个文件夹f1
,f2
并且f3
.
如何使用一个命令将f1
日期f2
从 2016 年 6 月 22 日到 2018 年 9 月 21 日的每个文件移至该文件夹?f3
mv
答案1
既然你已经标记了乌班图我将假设 GNU 工具
find f1 f2 -maxdepth 1 -type f -newermt 2016-06-22 ! -newermt 2018-09-21 -exec echo mv -t f3 {} +
我的日期可能每边都有 ±1 天的误差 - 请检查并相应调整。当您高兴地看到该mv
命令已收到正确的文件时,请删除echo
前缀。
答案2
和zsh
:
autoload age
mv (f1|f2)/*(.e[age 2016-06-22 2018-09-21]) f3/
(请注意,它匹配.
上次修改的文件(仅带有 glob 限定符的常规文件)开始那2天。如果您还想移动 2018 年 9 月 21 日任意时间修改的文件,则需要将第二个日期更改为 2018 年 9 月 22 日。