find 命令使用详细

   linux上可以在文件系统上在指定的路径查找需要的文件,可以使用的文件查找命令有: locate , find

locate 是非实时查找,也叫数据库查找, 它基于索引进行的查找,基于数据库的查找,依赖于已经构建的索, linux索引实在系统空闲时自动进行的,是一个周期性的任务。如果要使用locate来做精确查找,需要先手动构建数据库索引。在系统生产运行时,构建数据库索引比较费资源。 特点如下:
(!) 查找速度快
(2) 可以模块查找
(3) 非实时查找

使用: locate 查找关键字

find 实时查找。它通过便利目标目录下的所有文件来匹配目标文件,不依赖与其他外部环境。 特点如下:
(1) 较locate 慢
(2) 可以精确查找
(4) 实时查找

find 命令使用

语法:

find [-H] [-L] [-P] [-D debugopts] [-Olevel] [path...] [expression] [action]
说明:
path... 查找路径,可以指定多个,默认为当前路径
expression 查找的条件,包括根据文件名、类型、大小、修改时间等进行查找,默认查找当前路径所有文件
action: 处理动作,对符合条件的文件所做的操作,默认为显示到标准输出

查找条件:

-name 根据文件名查找, 支持glob,即包括: *,?,[],[^],来匹配文件名
-例如:

find /etc/ -name passwd  精确查找    
find /etc/ -name '*passwd*'  匹配查找  

-iname 根据文件名查找,不区分大小写
-regex pattern 使用正则表达式来匹配文件(路径)

根据属主属组查找:
-user username 查找属主为username的文件
例如:

find /home -user ansible -ls
ls是对找到的文件查看长格式  

-group groupname 查找属组为groupname的文件
-uid uidnumber 查找uid为uidnumber的文件
-gid gidnumber 查找gid为gidnumber的文件
-nouser 查找没有属主的文件
-nogroup 查找没有属组的文件

根据文件类型查找:
-type type
f 普通文件
d 目录
l 链接
b 块设备
s 套接字
c 字符设备
p 管道文件
注意: 如果没有限制文件类型,那么默认显示所有的文件类型

根据文件大小查找
查找单位: k M G
-size size 查找(size-1, size] 之间的大小的文件
-size -size 查找[0, size-1] 之间的大小的文件
-size +size 查找[size, 无穷大] 之间的大小的文件
例如;

根据时间戳进行查找

  • 以天为单位
    -atime +/- 时间 [t,t+1)/+[t+1, 无穷大]/-[0,t)
    -ctime +/- 时间 [t,t+1)/+[t+1, 无穷大]/-[0,t)
    -mtime +/- 时间 [t,t+1)/+[t+1, 无穷大]/-[0,t)

  • 以分钟为单位
    -amin +/- 时间
    -cmin +/- 时间
    -mmin +/- 时间

根据权限查找:
-perm +/- mode
-perm mode 根据权限精确查找
-perm +mode u|g|o对象中任何一类匹配即可
-perm -mode 每一类对象都必须拥有(包含)为其指定的权限标准
说明: + 相当于或关系(其中一个符合) - 相当于且关系(所有用户都要符合)
注意: + 在c6版本上要用/替代, +被废弃

查找条件组合:

-a 与
-o 或
-not 非
例如:
find / ( -nouser -o -nogroup ) -ls
find /home ( -not -user root -a -not -user root ) -ls
find /home -not ( -user root -o -user root ) -ls

处理行为

-print 默认的处理方式,显示结果到标准输出
-ls 长格式显示
-deete 删除查找到的文件
-fls /path/to/path 查找到的所有文件的长格式信息保存至指定文件中
-ok command {} ; 对每个查找到的文件执行command指定的命令 ,执行命令之前会让用户确认。
-exec command {} ; 指定命令不需要用户确认

说明: {} 表示引用被查找到的文件;

注意: find 一次性查找到所有的符合条件文件然后在传递给后面的命令。这种方式可能会导致处理失败。可以通过xargs command 来执行命令。

示例:
查找属主的文件改为root
find /tmp -nouser -exec chown root {} ;
find /home -perm -700 -exec cat {} ;
find /tmp -name a.txt -ok du {} ;
查找5分钟之内改过的文件:
find /tmp -cmin -5
修改文件名称:
find /tmp -name a.txt -exec mv {} {}.csv ;

find 命令使用示例
  1. 查找/var目录下属主为root, 且属组为mail的所有文件或目录
    find /var -user root -a -group mail -ls

  2. 查找/user目录下不属于root、bin和hadoop的所有文件或目录
    find /usr -not ( -user root -o -user bin -o -user hadoop ) -ls

  3. 查找/home目录下最近一周内其内容修改过的同时属主不为root 也不是hadoop的文件或目录
    find /home -atime -7 -a -not ( -user root -o -user hadoop ) -ls

  4. 查找当前系统上没有属主或属组,且最近一周内曾经被访问过的文件或是目录
    find / -nouser -a nogroup -a atime -7

  5. 查找/etc目录下大于1m且类型为普通文件的的所有文件或目录
    find /etc -not -perm /222

  6. 查找/etc下至少有一类用户没有执行权限的文件
    find /etc -not -perm -222 -ls

  7. 查找/etc目录下所有用户都没有写权限的文件
    find /etc -not -perm /222 -ls

  8. 查找/etc/init.d目录下,所有用户都由执行权限,且其他用户有写权限的文件.
    find /etc/init.d -perm -113

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 195,783评论 5 462
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 82,360评论 2 373
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 142,942评论 0 325
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 52,507评论 1 267
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 61,324评论 5 358
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 46,299评论 1 273
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 36,685评论 3 386
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 35,358评论 0 254
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 39,652评论 1 293
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 34,704评论 2 312
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 36,465评论 1 326
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 32,318评论 3 313
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 37,711评论 3 299
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 28,991评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,265评论 1 251
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 41,661评论 2 342
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 40,864评论 2 335

推荐阅读更多精彩内容