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

文件查找---find

时间:2015-08-20 10:50:42      阅读:134      评论:0      收藏:0      [点我收藏+]

标签:find命令使用

    相对于locate,find的优点在于实时查找,精确,支持许多查找标准,单其查找时需要遍历所有文件,速度较慢

基本用法

find [查找路径] 匹配标准 处理动作

查找路径:可省略,默认为当前目录

查找标准,默认为显示查找路径下的所有文件

处理动作,默认为打印


匹配标准

-name ‘FILENAME‘ 对文件名精确查找,可使用通配符

    ?   代表一个字符

    *   代表任意字符

    []  包含

    ...

-iname ‘FILENAME‘ 对文件名查找并且不区分大小写

-user USERNAME 根据属主查找

-group GROUPNAME 根据数组查找

-uid UID 根据UID查找

-gid GID 根据GID查找

-nouser 查找没有属主的文件

-nogroup 查找没有属组的文件

-type [fdcblps]匹配文件类型

    f:普通文件

    d:目录

    c:字符设备

    b:块设备

    l:连接文件

    p:管道

    s:套接字

-size [+-][MGk] 按大小查找,默认单位为字节

    +:大于的

    -:小于的

    +10M:大于10M,-10M:小于10M

组合查找(默认为与关系)

-a同时必须满足,查找系统上没有属主的普通文件

    find / -nouser -a type f

-o满足其中一个条件即可,查找系统上没有属主的文件或块设备

    find / -nouser -o -type -b

-not不满足条件,查找系统上非普通文件

    find / -not -type d

    查找当前目录下不能是用户不是user1且不是user2的所有文件  

    find ./ -not -user user1 -a -not -user user2

    find ./ -not \(-user user1 -o user2 \)


根据修改,访问时间查找

-atime    Access time,最后一次读取的时间, ls –lu filename

-mtime    Modified time,文件内容最后一次修改的时间,ls –l filename

-ctime    Create time,修改修改文件权限,文件名或移动的时间,ls –lc filename

-amin     查找atime的偏移量,单位分钟

-mmin               查找mtime 的偏移量,单位分钟

-cmin                 查找ctime的偏移量,单位分钟


find . [-atime|-ctime|-mtime] [-/+]num

+num:表示发生在>num天以前

-mum:表示发生在>0 且<num天以内

num:表示发生在前=num天的时候


举例:以查找mtime修改文件为例

    07-26 03:25 mbox

    08-14 21:43 xxxx

查找19天以内修改的文件

    find ./ -mtime -19 查找结果为xxxx

查找前第19天修改的文件

    find ./ -mtime 19 查找结果mbox

查找18天前修改过的文件

    find ./ -mtime +18 查找结果是mbox


find . [-amin|-cmin|-mmin] [-/+]num

+num:表示发生在>num分钟以后

-mum:表示发生在>0且<num分钟以内

num:表示发生在前=num分钟的时候


举例:以查找mmin为例

当前时间:8-14 22:07:23

    08-14 21:43 xxxx

    07-26 03:25 mbox

查找30分钟以内修改过的文件

    find ./ -mmin -30 查询结果为xxxx

查找前第24分钟时修改过的文件

    find ./ -mmin 24 查询结果为xxxx

查询修改时间超过30分钟的文件

    fing ./ -mtime +30 查询结果为mbox


权限查找

-perm mode 每一位精确匹配

-perm -mode 文件权限完全包含此mode才显示

-perm /mode 9位中任意匹配就显示

-perm +mode 已被-perm /mode取代


查找当前文件夹rwx------权限的文件

find ./ -perm 700

查找当前文件夹含有x权限的文件

find ./ -perm /111

查找当前文件夹含有属主其中含有r和w权限的文件夹

find ./ -perm -600



动作

-print :默认显示 可以不加

-ls:类似ls -l的显示

-ok COMMAND {} \;后接COMMAND,必须以\;结尾,{}引用前面查询的结果,每一次操作需要用户确认;

-exec COMMAND {} \;和-ok COMMAND {} \;意义相同,但不需要用户确认操作.\

xargs 从标准输入

找到当前目录下超过1K的文件.并把结果输出到文件

find ./ -size +1k |xargs echo > ./print.s


文件查找---find

标签:find命令使用

原文地址:http://w564791.blog.51cto.com/6620967/1686279

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