find命令的用法

find命令用来在指定目录下查找文件。任何位于参数之前的字符串都将被视为欲查找的目录名。如果使用该命令时,不设置任何参数,则find命令将在当前目录下查找子目录与文件。并且将查找到的子目录和文件全部进行显示。

语法:

find   查找路径   选项  参数

 

-a  两个条件都满足 (默认为 -a)

find  /data -mtime +3 -a -type f -exec rm {} \;

-o  两个条件任选一

find  /data -mtime +3 -o -type f -exec rm {} \;

! 取反

find /root ! -mtime +3 -o -type f -exec rm {} \;

 

例子:find  /data  -mtime  +3  -type f  -exec rm {}  \; ||  find /data -mtime +3  -type f | xargs rm   

查找/data目录下 3天以前的文件然后删除。

选项:

-type   类型

f:文件

d:目录

b:块设备

c:字符设备

s:套接字文件

l:链接文件

-mitme:修改时间

-ctime:改变属性时间

-atime:访问时间

+3   3天以前

-3   最近3天

3    第3天

-size  大小

+10M  大于10M

-10M   小于10M

10M    等于10M

-user 用户

-group  组

-uid 

-gid

-perm  权限 

644

找到1个小时内被修改过的文件

想要通过文件访问时间找出文件,可以使用参数 -amin -atime。下面是man手册中有关amin和atime的定义。

  • -mmin n 文件最后一次访问是在n分钟之内
  • -amin n  :访问时间
  • -cmin n   : 改变属性时间
 find . -mmin -60

find /data \( -user root -size 10M -mtime +3 \)

注:当有多个选项时使用 ()并且需要 \ 转义

 



 

posted @ 2018-06-15 19:46  兵果果  阅读(660)  评论(0)    收藏  举报