码迷,mamicode.com
首页 > 系统相关 > 详细

Linux的文件找工具find的小秘密

时间:2016-03-27 00:02:49      阅读:283      评论:0      收藏:0      [点我收藏+]

标签:find

文件查找工具:

文件:根据文件的种属性去找到相应文件


find命令:通过遍历指定的目标目录,实时查找符合指定属性的文件;


精确匹配;速度略慢;


find [OPTIONS] [查找路径] [查找条件] [处理动作]

 查找路径:默认为当前路径;

 查找条件:默认为指定路径下的所有文件;

 处理动作:默认为打印至屏幕;


查找条件:

-name "文件名":文件名支持使用globbing

*, ?, [], [^]


# find /etc -name "passwd*"


-iname "文件名"


-user USERNAME: 根据属主查找

-group USERNAME: 根据属组查找


-uid UID: 根据指定UID查找;

-gid GID: 根据指定GID查找;


-nouser: 查找没有属主的文件;

-nogroup:查找没有属组的文件;


组合查找条件:

与:-a, 查找条件1 -a 查找条件2 -a ...

所有条件必须同时满足

或:-o, 查找条件1 -o 查找条件2 -o ...

满足其中一个条件即可

非:-not, !   

-not 查找条件


# find /tmp -nouser -a -name "*centos*" -ls


# find /tmp -not \( -name "*.txt" -o -name "*.out" \)

# find /tmp -not -name "*.txt" -a -not -name "*.out"


查找条件(2)


-type TYPE: 根据文件类型查找

f: 普通文件

d: 目录文件

l: 符号链接文件

b: 块设备

c: 字符设备文件

p: 命令名管道文件

s: 套接字文件


-size [+|-]#UNIT:

常用单位有:k, M, G

#UNIT: #-1 < x <= #

2k:1.8k, 1.9k, 1.1k

-#UNIT:x <= #-1

-2k: 1k, 0.9k

+#UNIT: x > #

+2k: 2.1k, 3.1k


根据时间戳查找:

以“天”为单位

-atime [+|-]#

#: #= < x < #+1

-#: x < #

+#: x >= #+1


-mtime [+|-]#


-ctime [+|-]#


以“分钟”为单位

-amin [+|-]#

-mmin

-cmin


        根据权限查找:

-perm [+|-]MODE

MODE: 与MODE精确匹配

+MODE:任何一类用户的权限只要能包含对其指定的任何一位权限即可;

            -MODE:每一类用户的权限都包含对其指定的所有权限;

-222,666,664


处理动作:

-print: 默认动作,打印至屏幕;

-ls: 显示找到的文件的详细属性;

-exec COMMAND {} \;

-ok COMMAND {} \;


注意:find命令会一次性找到所有符合条件的文件,并一同传递给后面的命令;但有些命令不能接受过长的参数;解决办法:


find | xargs COMMAND




本文出自 “11284919” 博客,请务必保留此出处http://11294919.blog.51cto.com/11284919/1755554

Linux的文件找工具find的小秘密

标签:find

原文地址:http://11294919.blog.51cto.com/11284919/1755554

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