假设文件创建如下:
$ touch -d "00:00:00 today" stamp
为什么以下命令找不到它?
$ find -type f -daystart -mtime 0
以下命令确实找到此文件
$ find -type f -daystart -mtime -1
答案 0 :(得分:1)
它看起来像一个bug。如果添加非零时间的文件,请说
$ touch -d“00:00:00.01今天”盖章
它按预期工作。
答案 1 :(得分:1)
从我自己的实验来看,看起来Joakim是对的 - 至少对于mmin来说。 daystart似乎从明天开始就是相对的。
ls -l stamp*
-rw-r--r-- 1 me me 0 Jun 7 00:01 stamp
-rw-r--r-- 1 me me 0 Jun 7 16:38 stamp2
-rw-r--r-- 1 me me 0 Jun 7 16:55 stamp3
注意stamp3是如何在16:55
60 * 16 + 55 = 1015
1440(一天) - 1015 = 425find . -type f -daystart -mmin -425
./stamp3
让我们抓住邮票2
1440 - 60 * 16 - 38 = 442
find . -type f -daystart -mmin -442
./stamp2
./stamp3
现在如果我想从一系列时间捕获文件,我可以这样做:
find . -type f -daystart -mmin -1439 -mmin +425
./stamp2
答案 2 :(得分:0)
似乎(至少在我的机器上)find -daystart
实际上相对于明天的开始进行搜索。
我在运行find -daystart -mtime 1
以及find -daystart -mmin -1441
(60 * 24 = 1440)而不是find -daystart -mmin -1440
时找到该文件。我实际上可以使用与1441的精确匹配找到它,find -daystart -mmin 1441