请告诉正确的人在 cli 上列出日期范围内的文件吗?假设在 2 月 20 日到 3 月 2 日之间,然后将这些文件转移到另一个目录。
谢谢
答案1
对于find
没有的实现-newerct
(较旧的 GNUfind
和find
BSD 系统):
创建两个时间戳文件并用于find
查找比最旧的文件更新和比最新的文件更旧的所有文件:
touch -d 2018-02-20T00:00:00 ts-start
touch -d 2018-03-03T00:00:00 ts-end
find . -type f -newer ts-start ! -newer ts-end ! -name ts-end -exec mv {} /destination ';'
rm -f ts-start ts-end
我们必须排除ts-end
文件名,因为该文件满足条件。
答案2
find -newerct "20 Feb 2018" ! -newerct "2 Mar 2018" -exec mv {} /path/to/target/dir
这使用了 GNU find 最新版本中引入的功能。
有很多其他方法可以完成同样的事情find
。请参阅该页面以获取有关和其他好东西man
的信息 。-newerxy
-mtime