find指定具体时间参数-newermt

之前在写一个文件处理脚本的时候,需要查找在某个具体时间段内生成的批量文件,第一时间想到的是"find -mtime",但是这种查找的时间单位是天,怎么精确到分钟呢?或者说按照时间戳去查找?这就需要使用"-newermt"

1."-newermt"参数

find /dir1 -type f -newermt '2018-5-26 21:00' ! -newermt '2018-5-26 22:00' -exec cp {} /dir2 \;
#将/dir1目录下2018-5-26 21:00到2018-5-26 22:00时间段内修改或生成的文件拷贝到/dir2目录下

该参数中的m其实就表示mtime,t表示绝对时间,那同样还存在:-newerat、-newerct

2."-atime"、"-ctime"、"-mtime"参数
回忆一下这三个参数的使用方法:

-atime:访问时间,文件被读取或执行的时间。
-ctime:属性改变时间,文件的inode被修改的时间
-mtime:内容修改时间

参数后面会跟上具体的数字:

-1:24小时之内操作过的
1:24小时之外,48小时之内操作过的
+1:48小时之外操作过的
#这三种时间没有交集

猜你喜欢

转载自blog.51cto.com/fengjicheng/2120676