Answers:
采用 find /path -type f -mtime +60s
在-
刚刚的数字之前是不是正规“的说法冲刺”,而是指“小于”。+
然后是“超过”。
来自man find
:
所有带有数字参数的基数都允许数字以加号(``+'')或减号(``-'')开头。前面的加号表示``大于n'',前面的减号表示``小于n'',都不表示``正好n''。
应该注意的是,对于正好为n,时间是四舍五入的。因此1
(1天)并不意味着86400秒。
-
中-mtime -60s
是不是一种选择分隔符。-mtime
是一个选项,后跟一个option参数。选项参数是-60s
,并且其中的参数是-
选项参数本身的一部分,而不是选项定界符。这意味着“少于60秒”。选项参数60s
和分别+60s
表示“等于60秒”和“大于60秒”。
Apple MacOS手册和FreeBSD手册仅在一个地方提到了+
和-
前缀,而忘记了在任何地方解释它们的含义。这就是它们。
(find
有趣的是,有关GNU的GNU Info手册也有相同的遗漏,但是,GNU find
的语法有时与BSD和MacOS find
语法有所不同。)
find
MacOS 10手册页。MacOS 10开发人员库。find
(1)。2010-03-17。FreeBSD通用命令手册。FreeBSD项目。atime
了时间格式,但这也没有解释前缀。这是未引用的单独部分。
您应该可以使用
find . ! -mtime -60s
find . !( -mtime -60s )
在Unix系统中,-mtime之前是+/-,后面是数字,然后是时间单位。[+-] nn [dms]
Linux使用mtime数天,使用mmin数分钟,但是似乎没有秒选项,也没有使用时间单位说明符。+或-仍指大于或小于时间,而不是如上所述的选项参数。
您可以使用-mmin 1,但是/unix/238738/find-files-newer-than-15-seconds-but-older-than-2-seconds讨论了如何处理秒数。
+60
并非与相反-60
,出于相同的原因,小于并非与大于:相反:两者都排除了它们要比较的确切值。但是您的问题并没有确切表明您想要哪种行为。