码迷,mamicode.com
首页 > 其他好文 > 详细

文件查找find

时间:2017-09-26 22:24:12      阅读:180      评论:0      收藏:0      [点我收藏+]

标签:fifo   结束   int   group   UI   dep   运算   ctime   code   

使用方法:

find path -option [-print ] [ -exec -ok command ] {} \;

 

根据文件名查找

find / -name filename 再根目录里面搜索文件名为filename的文件
find /home -name "*.txt"
find /home -iname "*.txt" # 忽略大小写

 


根据文件类型查找
find . -type 类型参数

f 普通文件
l 符号连接 
d 目录 
c 字符设备 
b 块设备 
s 套接字 
p Fifo

 


根据目录深度查找

find . -maxdepth 3 -type f # 最大深度为3
find . -mindepth 2 -type f # 最小深度为2

 

根据文件的权限或者大小名字类型进行查找

find . -type f -size (+|-)文件大小 # +表示大于 -表示小于

b —— 块(512字节) 
c —— 字节 
w —— 字(2字节) 
k —— 千字节 
M —— 兆字节 
G —— 吉字节

 

按照时间查找

-atime(+|-)n # 此选项代表查找出n天以前被读取过的文件。
-mtime(+|-)n # 此选项代表查找出n天以前文件内容发生改变的文件。
-ctime(+|-)n # 此选项代表查找出n天以前的文件的属性发生改变的文件。
-newer file # 此选项代表查找出所有比file新的文件。
-newer file1 ! –newer file2 # 此选项代表查找比file1文件时间新但是没有file2时间新的文件。

# 注意: 
# n为数字,如果前面没有+或者-号,代表的是查找出n天以前的,但是只是一天之内的范围内发生变化的文件。
# 如果n前面有+号,则代表查找距离n天之前的发生变化的文件。如果是减号,则代表查找距离n天之内的所有发生变化的文件。
# -newer file1 ! –newer file2中的!是逻辑非运算符

 

按照用户/权限查找

-user 用户名:根据文件的属主名查找文件。
-group 组名:根据文件的属组名查找文件。
-uid n:根据文件属主的UID进行查找文件。
-gid n:根据文件属组的GID进行查找文件。
-nouser:查询文件属主在/etc/passwd文件中不存在的文件。
-nogroup:查询文件属组在/etc/group文件中不存在的文件
-perm 777: 查询权限为777的文件

 

查找时指定多个条件 

-o:逻辑或,两个条件只要满足一个即可。
-a:逻辑与,两个条件必须同时满足。

 

find /etc -size +2M -a -size -10M

## 对查找结果进行处理
-exec shell命令 {} \;
-ok shell命令 {} \;
其中-exec就是代表要执行shell命令,后面加的是shell指令,再后面的“{}”表示的是要对前面查询到的结果进行查询,最后的“\;”表示命令结束。需要注意的是“{}”和“\”之间是要有空格的。而-ok选项与-exec的唯一区别就是它在执行shell命令的时候会事先进行询问,-print选项是将结果显示在标准输入上

find /home -name “*.txt” -ok ls -l {} \;
find /home -name “*.txt” -ok rm {} \;

 

 



文件查找find

标签:fifo   结束   int   group   UI   dep   运算   ctime   code   

原文地址:http://www.cnblogs.com/xiaoyaz/p/7598954.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!