find ;locate

loacte :功能较弱,速度快,     locate 路径   文件名关键字
整个系统中查找:locate .tar
系统将所有文件名都记录在一个文件中:/var/lib/molcate的数据库中。locate 没有遍历硬盘去查找。但如果这个数据库没有实时更新,则会出一些问题。默认每天更新一次,可通过updatedb来更新它,但可能花费一些时间。
-----------
find 查找范围 查找条件 动作 
-name 得是文件名称,而不是关键字........要用关键字则要使用通配符
-type 根据文件类型来查找:d:目录文件  f:普通文件   c:表示字符设备文件 b:块设备文件; l符号链接文件
-size :大小   find -size / -size -3k ls            :c 字节  k : M  G
根据文件拥有者,从属拥有者来四个:-user -uid -group -gid 
根据访问权限数字来查找  -perm   find -perm 754
-------------------
连用:与  -a                 或 -o                             非  !                   find /temp \(xxxx -a xxxxxx -a .........) -ls                  
动作选项:  找完了之后,要对文件做些什么:            -exec rm -rf {} \;
-ok  可替换-exec     只不过是一种更加安全的模式去做。有逐个提示。
\是转意字符。    

09230107_pdNw.png

 

命令

  

用法:find  <path> <-option> [-print | -ls]  [-exec|-ok <command> {} \;]

 

在<path>指定的目录结构中搜索文件,并执行指定的操作。

 

 

find需要根据某个条件在特定的目录进行查找,有以下常用的查找选项:

   

¨       -print    将查找到的文件输出到标准输出      

¨       -exec command {} \;   将查到的文件执行command操作,{} 和 \;之间有空格   

¨       -fprint  <filename> 将查找到的文件输出到指定文件

¨       -ok       和-exec相同,只不过在操作前要询问用户

¨       -name <filename>  : 查找名为filename的文件,即按文件名查找。

¨       -iname <filename>    : 与-name相同,只是忽略大小写(-i);    

¨       -perm                      : 按执行权限来查找    

¨       -user <username>     : 按文件属主来查找    

¨       -group <groupname>   : 按组来查找    

¨       -user <username>     : 按文件属主来查找    

¨       -amin  <-n|+n>       : 按文件访问时间来查找文件,-n指n分钟以内,+n指n分钟以前    

¨       -atime <-n|+n>       : 按文件访问时间来查找文件,-n指n天以内,+n指n天以前    

¨       -cmin  <-n|+n>       : 按文件创建时间来查找文件,-n指n分钟以内,+n指n分钟以前    

¨       -ctime <-n|+n>       : 按文件创建时间来查找文件,-n指n天以内,+n指n天以前    

¨       -mmin  <-n|+n>       : 按文件更改时间来查找文件,-n指n分钟以内,+n指n分钟以前    

¨       -mtime <-n|+n>       : 按文件更改时间来查找文件,-n指n天以内,+n指n天以前    

¨       -empty               : 空白文件、空白文件夹、没有子目录的文件夹    

¨       -newer <f1 !f2>      : 查更改时间比f1新但比f2旧的文件    

¨       -type <b|d|c|p|l|f>  : 查是块设备/目录/字符设备/管道/符号链接/普通文件     

¨       -prune               : 忽略某个目录

¨       -size    <+n|-n>    :根据文件大小查找文件,+n表示超过n大小的文件,-n表示小于n大小的文件

   

      

 

09230107_1j14.png

 

注意

  

¨       -size <n[cwbkMG]>,其中:n表示文件大小的数值,b表示512字节的块,c表示字节,k表示K字节,M表示M字节(1024*1024字节=1024k),G表示G字节(1024*1024*1024字节=1024M) 

 

¨       -type <  [bcdpfls]>,其中b表示块设备文件,c表示字符设备文件,d表示目录,p表示命名管道文件,f表示普通文件,l表示符号链接文件,s表示socket文件 

   

 

09230107_1j14.png

 

注意

  

¨       find命令的所谓“命令动作(Actions)”,表示在查找到文件后,要对这些文件所做的操作,我们在这里只介绍其中三个常用的命令动作:

 

1.       –print:find命令的默认动作,将查找到的文件名输出

2.       –ls:将将查找到的文件名以ls –dils格式输出

3.       -exec command ; :对查找到的文件名执行指定命令,命令command由用户指定,用{} 代表查找到的文件,用\;结束。

4.       -ok command ; :与-exec非常类同,只不过在对文件执行指定命令之前会询问用户是否执行

     

 

09230107_1j14.png

 

注意

  

¨       在Linux中与文件相关的时间属性有三个:

 

1.       atime:文件最后被访问时间(Time when file data  was last accessed.),atime  是在读取文件或者执行文件时更改的。

2.       mtime:文件内容最后被更改的时间(Time when data was  last modified.),mtime  是在写入文件时随文件内容的更改而更改的

3.       ctime:文件状态(属性或者内容)最后被更改的时间(Time when file  status was last changed),ctime  是在写入文件、更改所有者、权限或链接设置时随 Inode 的内容更改而更改的。

 

¨       常常在一些文章和资料中提到的文件时间戳(Timestamp)指的是文章的mtime。

   

 

09230107_1j14.png

 

注意

  

¨       在find命令支持用逻辑运算符来操作单个逻辑条件,或者将逻辑条件连接起来:

 

1.       –a 表示与 

2.       –o 表示或 

3.       !表示取反

 

¨       注意:使用多个条件时,这些条件要用圆括号括起来,左右圆括号还要使用反斜杠"\"来进行转义,以防止shell的解释;

 
 

转载于:https://my.oschina.net/u/3127489/blog/1548102

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值