https://blog.csdn.net/u010181136/article/details/73322738

find可谓是aix/linux上使用较多的维护用命令,但很多时候需要用到针对时间的搜索。本文主要对find中搭配atime、ctime和mtime的各种参数进行介绍。
atime:访问时间(access time),指的是文件最后被读取的时间,可以使用touch命令更改为当前时间;
ctime:变更时间(change time),指的是文件本身最后被变更的时间,变更动作可以使chmod、chgrp、mv等等;
mtime:修改时间(modify time),指的是文件内容最后被修改的时间,修改动作可以使echo重定向、vi等等;

以下例子应该很容易理解上述三个时间:某用户在2013年1月5日00:00:00时,在/home下输入ping www.baidu.com > ping.log;5秒钟后,该用户使用ctrl+C强制关闭该命令;5秒钟后,使用cat ping.log查看。则ping.log的ctime为2013-01-05 00:00:00;mtime为2013-01-05 00:00:05;atime为2013-01-05 00:00:10。

这三个参数理解后,我们就可以使用find找到某个时刻进行过某类操作的文件集合。

find . {-atime/-ctime/-mtime/-amin/-cmin/-mmin} [-/+]num
第一个参数,.,代表当前目录,如果是其他目录,可以输入绝对目录和相对目录位置;
第二个参数分两部分,前面字母a、c、m分别代表访问、变更、修改,后面time为日期,min为分钟,注意只能以这两个作为单位;
第三个参数为量,其中不带符号表示符合该数量的,带-表示符合该数量以后的,带+表示符合该数量以前的。

下面以几个实际写法解释此用法:

-mtime +2,表示2天以外的,即从距离当前时间(2015-03-01 22:31)的2天前开始算起,往更早的时间推移。因此,距离当前时间的2天为:2015-02-27 22:31,在此前的文件,会被选出来。

-mtime +1,表示1天以外的,即从距当前时间的1天前算起,往更早的时间推移。因此2015-02-28 22:31前的文件属于该结果,2015-02-28 22:31后的文件不属于该结果

-mtime 1, 距离当前时间第1天的文件,当前时间为2015-03-01 22:31,往前推1天为2015-02-28 22:31,因此以此为时间点,24小时之内的时间为2015-02-28 22:31~2011-03-01 22:31,因此这段时间内的文件会被选中出来

-mtime -1 表示1天以内的,从距当前时间的1天为2015-02-28 22:31,往右推移

比如查找当前文件夹下 修改时间在180天以内文件的命令,\*是做特殊转义

find . -mtime -180 -name \*

在下面的例子中,我们用g r e p命令在当前目录下的所有普通文件中搜索D B O这个词:

$ find . -name  \* -type f -print | xargs grep "DBO"
注意,在上面的例子中, \用来取消f i n d命令中的*在s h e l l中的特殊含义。
如果不转义,会出现find: 0652-009 There is a missing conjunction错误。

find 根据时间查找,详解的更多相关文章

  1. SQL Server时间粒度系列----第3节旬、月时间粒度详解

    本文目录列表: 1.SQL Server旬时间粒度2.SQL Server月有关时间粒度 3.SQL Server函数重构 4.总结语 5.参考清单列表   SQL Server旬时间粒度       ...

  2. SQL Server时间粒度系列----第4节季、年时间粒度详解

    本文目录列表: 1.SQL Server季时间粒度2.SQL Server年时间粒度 3.总结语 4.参考清单列表   SQL Serve季时间粒度       季时间粒度也即是季度时间粒度.一年每3 ...

  3. Python基础系列讲解——时间模块详解大全之time模块

    Python中提供处理时间日期相关的内置模块有time.datetime和calendar. time模块中大多数函数调用了所在平台C library 的同名函数,因此更依赖于操作系统层面,所以tim ...

  4. c++ 时间类型详解 time_t

    Unix时间戳(Unix timestamp),或称Unix时间(Unix time).POSIX时间(POSIX time),是一种时间表示方式,定义为从格林威治时间1970年01月01日00时00 ...

  5. Newtonsoft.Json中的时间格式详解.

    Newtonsoft.json是一款不错的序列化反序列化第三方组件,具体如何使用属于基础知识,此处不再讲解.看以下代码: public class OutgameEntity { public str ...

  6. SQL Server时间粒度系列----第2节日期、周时间粒度详解

    本文目录列表: 1.从MySQL提供的TO_DAYS和FROM_DAYS这对函数说起2.SQL Server日期时间粒度3.SQL Server周有关时间粒度 4.总结语 5.参考清单列表   从My ...

  7. SQL Server时间粒度系列----第5节小时、分钟时间粒度详解

    本文目录列表: 1.SQL Server小时时间粒度2.SQL Server分钟时间粒度 3.总结语 4.参考清单列表   SQL Server小时时间粒度          这里说的时间粒度是指带有 ...

  8. 关于时区的时间的详解,比如UTC\GMT等

    UTC 和 GMT 及 北京时间的关系 UTC和GMT,这两者几乎是同一概念.它们都是指的格林尼治标准时间,只不过UTC的称呼更为正式一点.两者的区别在于前者是一个天文 上的概念,而 后者是基于一个原 ...

  9. java二分查找详解

    二分查找又称折半查找,优点是比较次数少,查找速度快,平均性能好:其缺点是要求待查表为有序表,且插入删除困难.因此,折半查找方法适用于不经常变动而查找频繁的有序列表.首先,假设表中元素是按升序排列,将表 ...

  10. 裴波那契查找详解 - Python实现

    裴波那契查找(Fibonacci Search)是利用黄金分割原理实现的查找方法. 斐波那契查找的核心是: 1.当key == a[mid]时,查找成功: 2.当key < a[mid]时,新的 ...

随机推荐

  1. boost::fucntion 用法详解

    转载自:http://blog.csdn.net/benny5609/article/details/2324474 要开始使用 Boost.Function, 就要包含头文件 "boost ...

  2. Understanding the Effective Receptive Field in Deep Convolutional Neural Networks

    Understanding the Effective Receptive Field in Deep Convolutional Neural Networks 理解深度卷积神经网络中的有效感受野 ...

  3. wifi下远程连接Android设备方法

    问题描述: android开发真机调试过程中,我们总是会重复卸载.安装这两个过程进行调试,通常都是用数据线连接电脑,能否摆脱数据线呢? 无线调试: 前提条件,电脑和手机必须处于同一局域网. 1.手机通 ...

  4. Java50道经典习题-程序24 根据输入求输出

    题目:给一个不多于5位的正整数,要求:一.求它是几位数,二.逆序打印出各位数字.分析: (1)利用随机函数产生[1,99999]之间的一个正整数n (2)将n转换成字符串s,调用字符串的length( ...

  5. Java50道经典习题-程序46 字符串连接

    题目:编写一个两个字符串连接的程序 import java.util.Scanner; public class Prog46 { public static void main(String[] a ...

  6. PHP常用的服务器

    Wordpress够流行了吧,它是一个用PHP编写的强大的博客平台.使用它来架设一个博客平台相关容易,是新手建站比较方便的工具.但是要真正体会Wordpress(以下简称WP)强大,插件是不可少的东西 ...

  7. c# 创建XML文档,解析XML文档

    1.静态函数 using System; using System.Collections.Generic; using System.Linq; using System.Text; using S ...

  8. Delphi和C#数据类型对应表

    Delphi DataType C# datatype ansistring string boolean bool byte byte char char comp double currency ...

  9. Linux CentOS 7下Memcached 安装与配置

    前言 本篇文章记录一下Linux CentOS 7中关于Memcached的安装与配置. 安装 安装memcached之前首先需要安装libevent,我这里用的版本是: •libevent-2.0. ...

  10. Oracle修改监听IP地址

    oracle 11g断网安装时,没有检测net的功能,所以安装完后,netstat -an 发现自动监听的是127.0.0.1:1521,这样安装完成后,其他的主机根本无法连接,是什么原因呢? 排错后 ...