Linux中的Find(查找)命令是在Linux系统中最重要并且更有用的命令之一。Find命令主要用于指定匹配文件条件的参数查找或者定位文件和目录的列表。Find命令能够被使用基于各种各样的条件,例如permissions(权限),users(用户),groups(组),file type(文件类型),date(日期),size(大小)等等其它可能的条件。

在这篇文章我们主要分享常用的35个Find命令以及通过例子来讲解每一个的用法,这里的35个例子我们分为5大块来讲解。

  • 第一部分: 基本的Find命令查找通过名字
  • 第二部分: 查找文件通过权限
  • 第三部分: 查找文件通过拥有者以及组
  • 第四部分: 查找文件通过日期和时间
  • 第五部分: 查找文件通过文件的大小

第一部分:通过文件名来查找文件

1,查找文件在最近的工作目录通过文件名

查找最近工作目录下名为test.txt的所有文件。

# find . -name test.txt

./tmp/test.txt
./test.txt

2,通过文件名查找文件在home工作目录

查找home目录下名为test.txt的所有文件。

# find /home/ -name test.txt

/home/test.txt

3,通过忽略文件名的大小写来查找文件在home工作目录

查找home工作目录下名为test.txt并且不分大小写的所有文件。

# find /home -iname test.txt

/home/test.txt
/home/Test.txt

/home/tesT.txt

4,查找目录使用文件名

查找在根目录/下名为test的所有文件名。

# find / -type d -name test

/test

5,使用Php文件名后缀来查找对应格式文件

查找最近工作目录下名为test.php的所有文件。

# find . -type f -name tecmint.php

/test.php

6,在最近工作目录查找所有Php文件

查找最近工作目录下所有Php后缀的文件。

# find . -type f -name "*.php"

./test.php
./login.php
./index.php

第二部分:通过权限查找文件

7,查找拥有777权限的所有文件

查找最近工作目录下有777权限的所有文件。

# find . -type f -perm 0777 -print

./test.txt

8,查找没有777权限的所有文件

查找根目录下没有777权限的所有文件。

# find / -type f ! -perm 777

9,查找有644权限的SGID文件

查找根目录下有644权限的SGID字节文件。

# find / -perm 2644

10,查找权限为551粘值位字节文件

查找根目录下权限为551粘值位字节文件。

# find / -perm 1551

11,查找根目录下SUID集合文件

查找根目录下SUID集合文件。

# find / -perm /u=s

12,查找根目录下SGID集合文件

查找根目录下SGID集合文件。

# find / -perm /g=s

13,查找只读文件

查找根目录下所有只读文件。

# find / -perm /u=r

14,查找可执行文件

查找根目录下所有可执行文件。

# find / -perm /a=x

15,查找所有777权限的文件并设置权限为644

查找根目录下权限为777的所有文件并通过chmod 修改权限为644。

# find / -type f -perm 0777 -print -exec chmod 644 {} \;

16,查找所有777权限的目录并设置权限为755

查找根目录下权限为777的所有目录并通过chmod 修改权限为755。

# find / -type d -perm 777 -print -exec chmod 755 {} \;

/test.php

17,查到并删除单个对应的文件

查找最近工作目录下名为test.php文件并删除。

# find . -type f -name "test.php" -exec rm -f {} \;

18,查找对应格式的多个文件并删除

查找最近工作目录下后缀为.mp3或者.txt的所有文件并删除。

# find . -type f -name "*.txt" -exec rm -f {} \;

OR

# find . -type f -name "*.mp3" -exec rm -f {} \;

19,查找/tmp目录下的所有空文件

查找/tmp目录下的所有空文件。

# find /tmp -type f -empty

/test.php

20,查找/tmp目录下的所有空目录

查找/tmp目录下的所有空目录。

# find /tmp -type d -empty

21,查找/tmp目录下的所有隐藏文件

查找/tmp目录下的所有隐藏文件

# find /tmp -type f -name ".*"

第三部分:通过用户拥有着以及拥有组查找文件

22,通过拥有者查找单个文件

查找根目录下名为test.txt的文件并且拥有着为user。

# find / -user root -name test.txt

23,在home目录下查找对应拥有者的所有文件

在home目录下查找对应拥有者root的所有文件。

# find /home -user root

24,在home目录下查找对应组的所有文件

在home目录下查找对应组developer的所有文件。

# find /home -group developer

25,查找后缀为txt的并且拥有者用户属于root的所有文件

查找后缀为txt的并且拥有者用户属于root的所有文件。

# find /home -user root -iname "*.txt"

第四部分:通过文件修改的时间和日期来查找文件

26,查找根目录下最后50天修改的文件

查找根目录下最后50天修改的文件。

# find / -mtime 50

27,查找根目录下最后50天访问的文件

查找根目录下最后50天访问的文件

# # find / -atime 50

28,查找根目录下最后50天到100天修改的文件

查找根目录下最后50天到100天修改的文件。

# find / -mtime +50 –mtime -100

29,查找在过去一小时改变的文件

查找在过去一小时改变的文件。

# find / -cmin -60

30,查找在过去一小时修改的文件

查找在过去一小时修改的文件。

# find / -mmin -60

31,,查找在过去一小时访问的文件

查找在过去一小时访问的文件。

# find / -amin -60

第五部分:通过文件大小来查找文件

32,查找根目录下大小为50M的文件

查找根目录下大小为50M的文件。

# find / -size 50M

33,查找根目录下大小为50M到100M之间的文件

查找根目录下大小为50M到100M之间的文件。

# find / -size +50M -size -100M

34,查找根目录下大小超过100M的文件删除

查找根目录下大小为100M的文件删除。

# find / -size +100M -exec rm -rf {} \;

35,查找根目录下格式为MP3并且大小超过10M的文件并删除

查找根目录下格式为MP3并且大小超过10M的文件并删除。

# find / -type f -name *.mp3 -size +10M -exec rm {} \;

Linux教程 Find命令的使用的更多相关文章

  1. Linux教程--基础命令

    本教程适用于已经有Linux基础的同学们来一起学习哦!(环境:实验楼(https://www.shiyanlou.com/)) 有趣的Linux命令:Banner 一.安装 sudo apt-get ...

  2. Linux教程 Yum命令的使用

    在这篇文章中,我们将学习如何安装,更新,删除,查找安装包,管理安装包以及安装包的仓库在Linux系统使用RedHat开发的YUM(Yellowdog Updater Modified)工具.以下这些命 ...

  3. Linux教程 网络管理命令Netstat的使用

    Netstat(network statistics) 网络统计命令是一个命令行工具,用于监视网络出入的连接,路由表以接口统计等.Netstat 在所有的Unix或者Linux系统,Windows系统 ...

  4. Mac OSX系统、Linux、Windows命令行教程

    目录 Mac OSX系统.Linux.Windows命令行教程 一.各系统终端的使用方法 二.各系统命令的功能 Mac OSX系统.Linux.Windows命令行教程 用你的终端做一些事情 (com ...

  5. linux教程及常用命令手册

    Linux 教程 Linux 教程.Linux 简介.Linux 安装.Linux 系统启动过程.Linux 系统目录结构.Linux 忘记密码解决方法.Linux 远程登录.Linux 文件基本属性 ...

  6. 键盘侠Linux教程(四)| 常用命令

    前言 Linux命令并不可怕,只要熟悉日常的操作命令即可,其他不熟悉的命令,需要用到的时候可以查阅资料,熟能生巧. Linux常用操作命令 命令的基本格式 命令的提示符 [root@localhost ...

  7. Linux 命令详解(七)Systemd 入门教程:命令篇

    Systemd 入门教程:命令篇http://www.ruanyifeng.com/blog/2016/03/systemd-tutorial-commands.html

  8. Linux 基础教程 29-tcpdump命令-1

    什么是tcpdump     在Linux中输入命令man tcpdump给出的定义如下所示: tcpdump - 转储网络上的数据流 是不是感觉很懵?我们用通俗.形象.学术的表达方式来全方位描述tc ...

  9. Linux培训教程 linux中nl命令使用介绍

    nl命令在linux系统中用来计算文件中行号.nl 可以将输出的文件内容自动的加上行号!其默认的结果与 cat -n 有点不太一样, nl 可以将行号做比较多的显示设计,包括位数与是否自动补齐 0 等 ...

随机推荐

  1. iOS摄像头和相册(转)

    iOS摄像头和相册iOS 获取图片有三种方法1. 直接调用摄像头拍照 2. 从相册中选择 3. 从图库中选择 UIImagePickerController 是系统提供的用来获取图片和视频的接口: 用 ...

  2. 斑马打印机ZBL语言

    ZBL手册:https://pan.baidu.com/s/1I8DaMUlf-9ytUwqtURw8rw 下面是打印CODE128条形码的代码 ^XA^FO100,100^BY6          ...

  3. OAuth 2.0 授权认证详解

    一.认识 OAuth 2.0 1.1 OAuth 2.0 应用场景 OAuth 2.0 标准目前被广泛应用在第三方登录场景中,以下是虚拟出来的角色,阐述 OAuth2 能帮我们干什么,引用阮一峰这篇理 ...

  4. layui监听radio点击事件

    layui.form.on('radio(layui_dataType)', function(data){ console.log(data.elem); //得到radio原始DOM对象 cons ...

  5. Python: 对于DataFrame.loc传入列表和传入元组输出区别的理解

    def test(): import pandas as pd tuples = [ ('cobra', 'mark i'), ('cobra', 'mark ii'), ('sidewinder', ...

  6. Django简介 --Python Web

    Python Web主流的三种框架:Django.Flask.Tornado,使用频度:Django>Flask>Tornado 一.设计模式 MVC:模型(Model).View(视图) ...

  7. 日常工作问题解决:配置NTP服务器以及一些常见错误解决

    1.配置NTP服务端 环境:redhat 6.5 服务器主机名 ip地址 说明 server 192.168.57.20 NTP服务端 client 192.168.57.21 NTP客户端 搭建说明 ...

  8. [转帖]可能是东半球最好的 Curl 学习指南,强烈建议收藏!

    可能是东半球最好的 Curl 学习指南,强烈建议收藏! http://www.itpub.net/2019/09/30/3302/ 记得转帖过.. 简介 curl 是常用的命令行工具,用来请求 Web ...

  9. 《Mysql 事务 - 隔离》

    一:事务概念 -  ACID(Atomicity.Consistency.Isolation.Durability,即原子性.一致性.隔离性.持久性) 二:事务产生的问题 - 多个事务同时执行的时候 ...

  10. python中传统除法、真除法和Floor除法

    1.python2.6及其之前,x/y是传统除法,对于整数会省去小数部分,对于浮点数会保持小数部分. 2.python3中x/y表示真除法,无论任何数据类型都会保留小数部分. 3.python2和3中 ...