find的使用格式如下:

  $ find <指定目录> <指定条件> <指定动作>

  - <指定目录>: 所要搜索的目录及其所有子目录。默认为当前目录。

  - <指定条件>: 所要搜索的文件的特征。

  - <指定动作>: 对搜索结果进行特定的处理。

如果什么参数也不加,find默认搜索当前目录及其子目录,并且不过滤任何结果(也就是返回所有文件),将它们全都显示在屏幕上。

1.当前目录下查找文件

[root@miyan ~]# find . -name test.txt
./findtest/test.txt

2.指定目录下查找

[root@miyan ~]# find /root/ -name test.txt
/root/findtest/test.txt

3.忽略大小写查找

[root@miyan ~]# find /root -iname test.txt
/root/findtest/test.txt
/root/findtest/TEST.txt

4.查找目录

[root@miyan ~]# find / -type d -name test
/usr/lib64/python2./unittest/test
/usr/lib64/python2./test
/usr/src/kernels/3.10.-229.14..el7.x86_64/include/config/test
/usr/src/kernels/3.10.-229.14..el7.x86_64/lib/raid6/test

5.按名称查找php文件

[root@miyan zabbix]# find . -type f -name events.php
./events.php

6.在目录中查找所有的php文件

[root@miyan zabbix]# find . -type f -name "*.php"
./graphs.php
./tr_logform.php
./authentication.php
./popup_httpstep.php
./image.php
..........

7.查找文件权限是777的

[root@miyan ~]# find . -type f -perm  -print
./findtest/test.txt

8.查找文件权限不是777的

[root@miyan ~]# find . -type f ! -perm  -print

9.查找644权限的SGID文件

[root@miyan ~]# find / -perm 

10.查找权限为551的粘着位文件

[root@miyan ~]# find / -perm 

11.查找所有SUID文件

root@miyan ~]# find / -perm /u=s

12.查找所有SGID文件

[root@miyan ~]# find / -perm /g+s

13.查找所有只读文件

[root@miyan ~]# find / -perm /u=r

14.查找所有可执行文件

[root@miyan ~]# find / -perm /a=x

15.查找所有777文件,并改为644

反斜杠用来告诉find何时命令结束

[root@miyan ~]# find / -type f -perm  -print -exec chmod  {} \;

16.查找所有777的目录,并改为755

[root@miyan ~]# find / -type d -perm  -print -exec chmod  {} \;

17.查找并删除某个文件

[root@miyan ~]# find . -type f -name "test.txt" -exec rm -f {} \;

18.查找并删除多个文件

[root@miyan ~]# find . -type f -name "*.txt" -exec rm -f {} \;

19.查找所有的空文件

[root@miyan ~]# find /tmp -type f -empty

20.查找所有空目录

[root@miyan ~]# find /tmp -type d -empty

21.查找所有隐藏文件

[root@miyan ~]# find /tmp -type f -name ".*"

22.根据用户查找某个文件

[root@miyan ~]# find / -user root -name test.txt

23.根据用户查找所有的文件

在/home下属于某个用户的所有文件

[root@miyan ~]# find /home -user zabbix
/home/zabbix
/home/zabbix/.bash_history
/home/zabbix/.config
/home/zabbix/.config/abrt
/home/zabbix/mysql-community-release-el7-.noarch.rpm
/home/zabbix/.lesshst
/home/zabbix/.cache
/home/zabbix/.cache/abrt
/home/zabbix/.cache/abrt/lastnotification
/home/zabbix/.bash_logout
/home/zabbix/.viminfo
/home/zabbix/.mysql_history
/home/zabbix/.bashrc
/home/zabbix/.bash_profile

24./home目录下查找某个组的所有文件

[root@miyan ~]# find /home -group developer

25./home目录下忽略大小写查找用户zabbix的所有文件

[root@miyan ~]# find /home -user zabbix -iname "*.txt"

26.查找50天之内修改过的文件

[root@miyan ~]# find / -mtime 

27.查找50天之内被存取过的文件

[root@miyan ~]# find / -atime 

28.查找50-100天之内修改过的文件

[root@miyan ~]# find / -atime + -mtime -

29.查找1个小时之内有变化的文件

[root@miyan ~]# find / -cmin -

30.查找1个小时之内修改过的文件

[root@miyan ~]# find / -mmin -

31.查找1个小时之内被存取过的文件

[root@miyan ~]# find / -amin -

32.查找所有的50M大小的文件

[root@miyan ~]# find / -size 50M

33.查找50-100M之间的文件

[root@miyan ~]# find / -size +50M -size -100M

34.查找并删除100M大小的文件

[root@miyan ~]# find / -size +100M -exec rm -rf {} \;

35.查找并删除指定类型,指定大小的文件

[root@miyan ~]# find / -type f -name *.mp3 -size +10M -exec rm {} \;

参考文献:

http://www.tecmint.com/35-practical-examples-of-linux-find-command/

35个例子学会find的更多相关文章

  1. Android 使用AsyncTask 下载图片的例子,学会使用AsyncTask

    1.添加布局文件:activity_main.xml 1 <LinearLayout xmlns:android="http://schemas.android.com/apk/res ...

  2. 一个简单的例子学会github repository的webhook

    github的webhook是个有用的功能,允许开发人员指定一个服务器的url.当开发者对github仓库施加操作,比如提交代码,创建issue时,github网站会自动向该url指定的服务器推送事件 ...

  3. Vue组件间通信:一个例子学会Vue组件-Vue.js学习总结)(转载)

    详情请点击 http://www.jianshu.com/p/9ad1ba89a04b

  4. ES6之Promise对象学习——8个例子学会Promise

    目录 Promise 立即执行 Promise 三种状态 Promise 不可逆性 链式调用 Promise.then()回调异步性 Promise中的异常 Promise.resolve() res ...

  5. 黑马程序员_Java基础:集合总结

    ------- android培训.java培训.期待与您交流! ---------- 一.集合概念 相信大家都知道,java是一门面向对象的编程语言,而对事物的体现都是以对象的形式,所以为了方便对多 ...

  6. 专业版Unity技巧分享:使用定制资源配置文件

    http://unity3d.9tech.cn/news/2014/0116/39639.html 通常,在游戏的开发过程中,最终会建立起一些组件,通过某种形式的配置文件接收一些数据.这些可能是程序级 ...

  7. Tcpdump使用常用9实例

    以下将给出9个使用tcpdump的例子,以说明tcpdump的具体使用方法. 1.针对特定网口抓包(-i选项) 当我们不加任何选项执行tcpdump时,tcpdump将抓取通过所有网口的包:使用-i选 ...

  8. 放飞App:移动产品经理实战指南

    <放飞App:移动产品经理实战指南> 基本信息 原书名:App savvy:rurning ideas into iPhone and iPad Apps customers really ...

  9. PHP学习系列(1)——字符串处理函数(2)

    6.chunk_split() 函数把字符串分割为一连串更小的部分.本函数不改变原始字符串. 语法:chunk_split(string,length,end) 参数: string——必需.规定要分 ...

随机推荐

  1. winform播放音乐

    string sound = Application.StartupPath +@"\song\123.wav"; //Application.StartupPath:程序exe所 ...

  2. HBase学习笔记——概念及原理

    1.什么是HBase HBase – Hadoop Database,是一个高可靠性.高性能.面向列.可伸缩的分布式存储系统,利用HBase技术可在廉价PC Server上搭建起大规模结构化存储集群. ...

  3. 一个IDEA和jackson结合的一个错误异常

    一个字段是isSend,用IDEA自动生成的getter/setter方法名会把is去掉.变成getSend()/setSend(). 当返回的时候使用Jackson转json的时候,就会把isSen ...

  4. js移除某一类的div

    (转载)Javascript removeChild()不能删除全部子节点的解决办法   在Javascript中,只提供了一种删除节点的方法:removeChild().removeChild() ...

  5. Tomcat服务器的默认端口是多少?怎样修改tomcat的端口?

    Tomcat服务器的默认端口是多少?怎样修改tomcat的端口? 解答:默认端口为8080,可以通过service.xml的Connector元素的port属性来修改端口.

  6. Cross compile perl

    Alex Suykov had do some work for this purpose, and my compile script is based on her patch. Steps St ...

  7. 那些年我读过的Blog(Ⅰ)

    序 近期发现自己已经很久很久没有写过文章,其中包括公开的和非公开的Blog,于是自己去翻了以前很多关注的人的Blog,发现也已经有很大一部分没有更新了,遂有了本文,梳理一下自己那些年关注过并且现在已经 ...

  8. 用用匿名函数和闭包加apply强制待定函数调用时使用特定上下文

    <button id="test">点我</button> <script> var button={ clicked:false, click ...

  9. Java中带包的类的编译与执行

    http://blog.csdn.net/wbrs13/article/details/4859880

  10. java 环境变量classpath的作用

    http://www.cnblogs.com/xwdreamer/archive/2010/09/08/2297098.html http://www.cnblogs.com/panxuejun/p/ ...