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. Failed to resolve: com.android.support:appcompat-v7:26.0.0wenti

    在安装Android Studio 3.0的时候出现了这个问题.查阅了许多资料都没有找到原因.到最后才发现,Android Studio默认https是不走代理的,只要勾选上https的代理就顺利的安 ...

  2. libubox-ustream

    参考:libubox [4] - uloop runqueue ustream libubox提供了流缓冲管理,定义在文件ustream.h,ustream.c和ustream-fd.c. 1. 数据 ...

  3. idea编译修改jdk版本

    由于项目需要,需要修改jdk的版本为1.8,这里记录一下修改的地方 1,项目的jdk版本 右键点击项目-> open module setting ->project,然后如图所示 2,在 ...

  4. Enterprise Architect UML建模

    UML建模 前言 UML建模资料已经很多了,有人想用有人不用,有人会用也有人不会用,本文只是作者的一篇UML建模总结,不想去写太细,因为真正的你去用下,去画下就基本都会了.工具毕竟是工具,设计和思想才 ...

  5. yii2 basic 简洁安装教程

    虽然yii官网上说叫咱们用composer安装来安装,但是鄙人感觉这样的安装方式会将自己写的代码共享到github中,因此不太建议大家这样用.下面来给大家介绍basic简洁的安装方法. 第一步,下载b ...

  6. 为什么需要标准IO缓冲?

    (转)标准I/O缓冲:全缓冲.行缓冲.无缓冲 标准I/O库提供缓冲的目的是尽可能地减少使用read和write调用的次数.它也对每个I/O流自动地进行缓冲管理,从而避免了应用程序需要考虑这一点所带来的 ...

  7. 数据库设计——E-R图

    一,复习下基础 1.弱实体 这样的实体须要依赖还有一个实体.若还有一个实体不存在了.它也随之消失.相对而言,它依赖的那个实体成为强实体. 2,特殊化 在数据库设计的过程中,我们会发现.一个实体能够依照 ...

  8. 3162 抄书问题(划分dp)

    3162 抄书问题 时间限制: 1 s 空间限制: 128000 KB 题目等级 : 钻石 Diamond 题解 查看运行结果 题目描述 Description 现在要把M本有顺序的书分给K个人复制( ...

  9. 【BZOJ1491】[NOI2007]社交网络 Floyd

    [BZOJ1491][NOI2007]社交网络 Description 在社交网络(socialnetwork)的研究中,我们常常使用图论概念去解释一些社会现象.不妨看这样的一个问题. 在一个社交圈子 ...

  10. 基于Web和二维码的文件传输服务

    在工作中难免需要对外提供一些我们抓取的log或者操作视频之类的资料,但由于工作环境日渐规范和严格,公司的网络环境和客户的网络环境是被独立开来的.这样做的好处不必多说,但同时也给我们工作带来的诸多不便. ...