首页 > 系统相关 >Linux find命令汇总大全和举例

Linux find命令汇总大全和举例

时间:2022-10-10 15:15:00浏览次数:55  
标签:文件 目录 etc 举例 Linux type find 大全

一、find命令语法格式:

  find [路径] [选项] [操作]

 选项参数对照表:

 

  三、常用选项

  -name  查找 /etc 目录下以 conf 结尾的文件,文件名区分大小写,例如:find /etc -name '*.conf'

  -iname 查找当前目录下所有文件名为 aa 的文件,文件名不区分大小写,例如:find . -name aa

  -user  查找文件所属用户为 zhangsan 的所有文件,例如:find . -user zhangsan

  -group 查找文件所属组为 dev 的所有文件,例如:find . -group dev

  -type  根据类型查找:如下

      f   文件        find . -type f

      d  目录        find . -type d

      c  字符设备文件    find . -type c

      b  块设备文件     find . -type b

      l   链接文件      find . -type l

      p  管道文件      find . -type p

  -size  根据文件大小查询

      -n  小于 大小为 n 的文件

      +n  大于 大小为 n 的文件

      举例1:查找 /ect 目录下,小于 10000 字节的文件。 find /etc -size +10000c

      举例2:查找 /etc 目录下,大于 1M 的文件。find /etc -size -1M

   -mtime  

      -n  n 天以内修改的文件。

      +n  n 天以外修改的文件。

      n   正好 n天 修改的文件

      举例1: 查询 /etc 目录下,5天以内修改 且以 conf 结尾的文件。 find /etc -mtime -5 -name '*.conf'

      举例2: 查询 /etc 目录下,10天之前修改,且属于 yangyang 的文件。  find /etc -mtime +10 -user yangyang

  -mmin  

      -n  n 分钟以内修改过的文件

      +n  n 分钟之前修改过的文件

      举例1: 查询 /etc 目录下 30分钟 之前修改过的文件。   find /etc -mmin +30

      举例1: 查询 /etc 目录下 30分钟 之前修改过的目录。   find /etc -mmin -30 -type d

  -mindepth n  从第 n 级目录开始搜索

      举例:从 /etc 的第三级子目录开始搜索。 find /etc -mindepth 3

  -maxdepth n  表示至多搜索到第 n-1 级子目录。

      举例1: 在 /etc 中搜索符合条件的文件,但最多搜索到 2级 子目录。  find /etc -maxdepth 3 -name '*.conf'

      举例2: find /etc -type f -name '*.conf' -size +10k -maxdepthc 2

四、不常用选项

  -nouser 查询没有所属用户的文件

      举例:find /etc -type f -nouser

  -nogroup 查询没有所属组的文件

      举例:find /etc -type f -nogroup

  -perm  根据权限查询

      举例:find /etc -perm 664

  -prune  通常和 -path 一起使用,用于将特定目录排除在搜索条件之外。过滤条件写在其他条件前面。

      举例1:查找当前目录下的所有普通文件,但排除 test目录。

        find . -path ./test -prune -o -type f

      举例2: 查找当前目录下所有普通文件,但排除 test目录 和 opt目录。

        find . -path ./test -prune -o -path ./opt -prune -o -type f  

      举例3: 查找当前目录下所有普通文件,但排除 test目录 和 opt目录,但属主为 yangyang

        find . -path ./test -prune -o -path ./opt -prune -o -type f -a -user yangyang

      举例4: 查找当前目录下所有普通文件,但排除 test目录 和 opt目录,但属主为 yangyang,且文件大小必须大于 500字节

        find . -path ./test -prune -o -path ./opt -prune -o -tyep f -a -user yangyang -a -size +500

  -newer file1

      举例:查找当前目录下比 a 文件要新的文件。  find . -newer a

五、操作查找到的文件 

  -print  打印输出。 默认的选项,即打印出找到的结果。

  -exec  对搜索到的文件执行特定的操作,固定的格式为:-exec 'commond' {} \; 注意:{} 表示查询的结果。

      举例1: 搜索 /etc 目录下的文件(非目录),文件以 conf 结尾,且大于 10k,然后将其删除。

        find /etc -type f -name '*.conf' -size +10k -exec rm -f {} \;

      举例2: 将 /data/log/ 目录下以 .log 结尾的文件,且更改时间在 7 天以上的删除。

        find /data/log -name '*.log' -mtime +7 -exec rm -f \;

      举例3: 搜索条件同 例1 一样,但是不删除,只是将其复制到 /root/conf 目录下

        find /etc -type f -name '*.conf' -size +10k -exec cp {} /root/conf/ \;

  -ok  和 -exec 的功能一样,只是每次操作都会给用户提示。  

六、逻辑运算符 

  -a    与 (默认情况查询条件之间都是 与 的关系)

  -o    或

  -not | !  非
————————————————
版权声明:本文为CSDN博主「linjun20」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/linjun20/article/details/119632446

标签:文件,目录,etc,举例,Linux,type,find,大全
From: https://www.cnblogs.com/sword0077/p/16775779.html

相关文章

  • linux离线部署(部署ansible为例)
    准备一台能连接互联网的服务器,制作ansible离线包,我们需要使用到yumdownloader及createrepo工具。首先安装yumdownloader:yumdownloader命令在软件包yum-utils里面。先......
  • Linux系统的硬链接和软连接对比区别
    1.Linux链接概念Linux链接分两种,一种被称为硬链接(HardLink),另一种被称为符号链接(SymbolicLink)。默认情况下,ln 命令产生硬链接。硬连接硬连接指通过索引节点来进行连......
  • Qt 资料大全
    发福利了、发福利了、发福利了,重要的事情说三遍。。。为了方便更多Qter了解、学习Qt,现将相关资源进行整理,主要内容包括:Qt官网、编码风格、GitHub&Third-Party、社区论......
  • Tubian Edge,Tubian Linux的滚动版本上线
    Github主页(提供下载):https://github.com/jinshulumengchuang/Tubian-Linux123网盘下载:https://www.123pan.com/s/XjkKVv-JO9Uvhttps://www.123pan.com/s/XjkKVv-BO9Uvhtt......
  • 初识Linux(一)------什么是Linux?
    前言最近遇到的项目需要在Linux上进行开发测试,作为萌新宝宝的我是一点不懂,还以为和Windows操作差不多,结果在Linux上屡屡四处碰壁,举步维艰。无奈只能祭出我本科大一就......
  • Linux相关命令
    查看端口和应用进程:netstat-tunlp启动jenkins:systemctlstartjenkins查看jenkins启动状态:systemctlstatusjenkins停止jenkins:systemctlstopjenkinssystemctl命......
  • linux top 查看CPU命令 top输出详解
    [root@localhost~]$top//动态查看进程使用资源的情况,每三秒刷新一次[root@localhost~]$top-c//动态查看进程使用资源的情况,但会详细地显示进程的命......
  • linux ssh 修改配置
    文件配置位置/etc/ssh/sshd_config 1.修改端口号改为不常用端口号如8822等#Port22 2.修改连接时长一般需要改为600-900之间数值#ClientAliveInterval 0......
  • Linux安装jdk
    1、检查一下系统中的jdk版本java-version#显示openjdkversion"1.8.0_102"OpenJDKRuntimeEnvironment(build1.8.0_102-b14)OpenJDK64-BitServerVM(build......
  • 37、linux下安装python3.6和django
    37.1、安装python:1、python介绍:python是一种面向对象的,解释型的计算机语言,它的特点是语法简介,优雅,简单易学。1989年诞生,Guido(龟叔)开发。编译型语言:代码在编译之后,编译成......