3

假设创建一个文件如下:

$ touch -d "00:00:00 today" stamp

为什么下面的命令找不到呢?

$ find -type f -daystart -mtime 0

以下命令确实找到了这个文件

$ find -type f -daystart -mtime -1
4

3 回答 3

1

它看起来像一个错误。如果你添加一个非零时间的文件,比如说

$ touch -d "00:00:00.01 today" 戳

它可以按您的预期工作。

于 2012-11-08T11:08:11.763 回答
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 = 425

find . -type f -daystart -mmin -425
./stamp3

让我们也赶上stamp2

1440 - 60*16 - 38 = 442

find . -type f -daystart -mmin -442
./stamp2
./stamp3

现在,如果我想从一段时间内捕获文件,我可以执行以下操作:

find . -type f -daystart -mmin -1439 -mmin +425
./stamp2
于 2017-06-07T22:39:57.830 回答
0

看起来(至少在我的机器上)find -daystart实际上搜索相对于明天的开始。

当我运行时,我找到了该文件find -daystart -mtime 1以及find -daystart -mmin -1441 (60*24=1440) 但不是find -daystart -mmin -1440. 我实际上也可以使用与 1441 的完全匹配来找到它,find -daystart -mmin 1441

于 2012-11-08T10:34:45.187 回答