find命令学习(4)

来源:未知 责任编辑:责任编辑 发表时间:2014-05-26 11:00 点击:

  $ find / -nogroup  -print

 

按照更改时间查找文件

        如果希望按照更改时间来查找文件,可以使用mtime选项。如果系统突然没有可用空间了,很有可能某一个文件的长度在此期间迅速增长,这时就可以用mtime选项来查找这样的文件。用减号-来限定更改时间在距今n日以内的文件,而用加号+来限定更改时间在距今n日以前的文件。

  希望在系统根目录下查找更改时间在5日以内的文件,可以用:

  $ find/-mtime-5-print

  为了在/var/adm目录下查找更改时间在3日以前的文件,可以用:

  $ find /var/adm  -mtime +3 -print

 

查找比某个文件新或旧的文件

      如果希望查找更改时间比某个文件新但比另一个文件旧的所有文件,可以使用-newer选项。它的一般形式为:

  newest_file_name  ! oldest_file_name

  其中,!是逻辑非符号。

  这里有两个文件,它们的更改时间大约相差两天。

  -rwxr-x-r-x     1 root     root        92    Apr  18 11:18         age.awk

  -rwxrwxr-x     1 root     root   1045    Apr 20 19:37         belts.awk

  下面给出的find命令能够查找更改时间比文件age.awk新但比文件belts.awk旧的文件:

  $ find . -newer age.awk ! -newer belts.awk -exec ls -l  {} \;

  -rwxrwxr-x     1 root     root        62    Apr  18 11:32         ./who.awk

  -rwxr-xr-x      1 root     root        49    Apr  18 12:05         ./group.awk

  -rw-r--r--              1 root     root    201    Apr  20 19:30         ./grade2.txt

  -rwxrwxr-x     1 root     root   1054    Apr 20 19:37         ./belts.awk

如果想使用find命令的这一选项来查找更改时间在两个小时以内的文件,除非有一个现成的文件其更改时间恰好在两个小时以前,否则就没有可用来比较更改时间的文件。为了解决这一问题,可以首先创建一个文件并将其日期和时间戳设置为所需要的时间。这可以用touch命令来实现。

  假设现在的时间是23:40,希望查找更改时间在两个小时以内的文件,可以首先创建这样一个文件:

  $ touch -t 05042140 dstamp

  -rw-r--r--              1 dave    admin     0     May 4  21:40        dstamp

发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
用户名: 验证码:点击我更换图片
最新评论 更多>>

推荐热点

  • /etc/fstab 详解
  • nginx主主集群
  •  LVS-NAT和LVS-DR模式的实现详解
  •  RHCE考试之磁盘配额
  • 学习笔记:ACL详解
  • suse linux双网卡双网关配置
  •  LVM逻辑卷管理器
  •  Nginx主主负载均衡架构
  • ubuntu学习Mysql

快速直达

操作系统导航

LinuxWindows虚拟机
网站首页 - 友情链接 - 网站地图 - TAG标签 - RSS订阅 - 内容搜索
Copyright © 2008-2015 计算机技术学习交流网. 版权所有

豫ICP备11007008号-1