很多细节方面的东西没有到真正用的时候,是觉察不出来的,因为这个时间的问题出了问题,现在好好理一下,这个find的时间很容易就搞混了,一段时间不用,也忘了,也反映出来了自己的基础知识不是很牢固啊
find与时间有关的选项有-atime(访问时间)、-ctime(创建时间)、-mtime(属性修改时间),参数为后面跟的时间n
find . -atime n 这里的n表示n天之前的“一天之内”被访问过的文件
find . -atime +n 列出在n天之前(不包含n天本身)被访问过的文件
find . -atime -n 列出在n天之内(包含n天本身)被访问过的文件
示例:
假如现在的时间点为20171209的15:00整,那么下面几个查询表示的具体时间范围
1:创建文件
touch -a -d "2017-12-02 12:00" a.txt
touch -a -d "2017-12-02 17:00" b.txt
touch -a -d "2017-12-03 19:00" c.txt
touch -a -d "2017-12-04 16:00" d.txt
touch -a -d "2017-12-05 16:00" e.txt
touch -a -d "2017-12-06 16:00" f.txt
touch -a -d "2017-12-07 20:00" g.txt
touch -a -d "2017-12-08 20:00" h.txt
2:以下三条命令得到的结果分别为:
find . -atime 2 找出两天之前的一天内被访问文件(距离现在的 -72小时 ~~ -48小时 之间)
find . -atime -2 找出距离此时两天之内的被访问的文件(距离现在的前48小时之内)
find . -atime +2 找出两天之前,不包括两天之前的一天(也就是不包括-2和2的)之前的被访问的文件(离此时72小时之前)
分析:
文件时间列表:
+2 2 -2
----------------------------------------------------------------------------------------------------------------><--------------------><------------------------------------------->
a.txt b.txt c.txt d.txt e.txt f.txt g.txt h.txt
___________|_____________|_____________|_____________|_____________|_____________|_____________|_____________|
12月2号 12月3号 12月4号 12月5号 12月6号 12月07号 12月08号 12月09号
15:00 15:00 15:00 15:00 15:00 15:00 15:00 15:00