我想显示特定日期的文件列表。 假设我在特定目录上有4个文件..
AA (Created on 01-Oct-2015)
BB (Created on 01-Oct-2016)
CC (Created on 01-Oct-2017)
DD (Created on 01-Oct-2017)
如果我将From日期参数作为01-Nov-2015
传递
所以它应该显示来自date like > 01-Nov-2015
的文件列表
对于上面的参数,它将打印
BB
CC
DD
仅文件
答案 0 :(得分:0)
如果find
支持-newerXY
支持find /tmp -newermt 01-Oct-2016
参数,您可以使用man
参数并提供日期。
示例:
touch -t 02010000 /tmp/stamp
find /usr -newer /tmp/stamp
rm -f /tmp/stamp
来自touch -d 10-Oct-2017 /tmp/stamp
find /usr -newer /tmp/stamp
rm -f /tmp/stamp
页面:
-newerXY参考
如果正在考虑的文件的时间戳X比文件引用的时间戳Y更新,则成功。字母X和Y可以是以下任何字母:
a文件参考的访问时间
B文件参考的出生时间
c inode状态更改参考时间
m文件参考的修改时间
t引用直接解释为时间
official workaround是使用正确的时间戳创建文件:
find -anewer BB
在您的情况下,使用日期来获取匹配的时间戳,如下所示
{{1}}
作为旁注,您可能希望使用以下方式查找比BB更新的文件:
{{1}}
答案 1 :(得分:0)
您可以在find中使用另一个具有更高兼容性的选项:
找到。 -type f -name" something" -mtime +15("天数")但是你必须计算实际日期和日期之间的天数,而不是你期望的日期,不要只接受一个日期的数字。