linux – 删除超过X分钟的文件

前端之家收集整理的这篇文章主要介绍了linux – 删除超过X分钟的文件前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我想删除超过59分钟的文件.我到现在为止
find /tmp -daystart -maxdepth 1 -mmin +59 -type f -name "*.*" -exec rm -f {} \;

这不起作用,似乎删除所有文件.我已经测试了这几次,我认为这个问题是与启动时间有关.

我已经阅读了这个手册页,似乎是在一天的开始的基础上,而不是从24小时前开始的.如果是这样,如何准确地删除59分钟以上的文件?我需要考虑开机时间,再加上几分钟吗?

例:

ubuntu@ip-10-138-30-118:/tmp$ls -la
total 8
drwxrwxrwt  2 root   root   4096 Jul 20 14:39 ./
drwxr-xr-x 23 root   root   4096 Jun 25 18:34 ../
-rw-rw-r--  1 ubuntu ubuntu    0 Jul 20 12:35 a.txt

以下两个命令都返回文件

ubuntu@ip-10-138-30-118:/tmp$find /tmp -daystart -maxdepth 1 -mmin +59 -type f -name "*.*"
/tmp/a.txt

和:

ubuntu@ip-10-138-30-118:/tmp$find /tmp -daystart -maxdepth 1 -mmin +359 -type f -name "*.*"
/tmp/a.txt

但是,该文件不超过659分钟(10.9小时)!但是在759(12.65小时),它不再返回文件了?

解决方法

当与-mmin一起使用时,-artstart似乎使它从今天结束开始计算,而不是开始.

如果您只想在59分钟前找到修改文件,则不需要该选项. -mmin默认从当前时间计算.

barmar@dev:~/testdir$date
Sat Jul 20 10:02:20 CDT 2013
barmar@dev:~/testdir$ls -l
total 0
-rw-r--r-- 1 barmar adm 0 Jul 20 09:57 a.txt
barmar@dev:~/testdir$find . -maxdepth 1 -mmin +2 -type f
./a.txt
barmar@dev:~/testdir$find . -maxdepth 1 -mmin +10 -type f

猜你在找的Linux相关文章