find命令排除某些目录或文件

#在当前目录下排除abc目录,查找所有文件 

find . -path "./abc" -prune -o -print

#在当前目录下排除abc目录,查找所有以.txt结尾的文件【方式一】

 find . -path "./abc" -prune -o -name "*.txt" -print

#在当前目录下排除abc目录,查找所有以.txt结尾的文件【方式二】

 find . -name ".txt" -not -path "./abc/"

#在当前目录下排除abc和def目录,查找所有以.txt结尾的文件

 find . ( -path ./abc -o -path ./def ) -prune -o -name "*.txt" -print

#在当前目录下排除abc目录和def/h.txt文件,查找所有以.txt结尾的文件

 find . ( -path ./abc -o -path ./def/h.txt ) -prune -o -name "*.txt" -print

#在当前目录下排除abc目录和def/h.txt文件和jk目录,查找所有以.txt结尾的文件 

find . ( -path ./abc -o -path ./def/h.txt -o -path ./jk ) -prune -o -name "*.txt" -print

#在当前目录下查找所有不是以.html结尾的文件 

find . ! -name "*.html" -type f

使用-prune开关。例如,如果要排除misc目录,只需将a添加-path ./misc -prune -o到您的find命令中:

find . -path ./misc -prune -false -o -name '*.txt'

这是带有多个目录的示例:

find . -type d \( -path dir1 -o -path dir2 -o -path dir3 \) -prune -false -o -name '*.txt'

在这里,我们排除./dir1./dir2./dir3在当前目录中,因为在find表达它是作用于标准的动作-path dir1 -o -path dir2 -o -path dir3(如果DIR1DIR2DIR3),以相与type -d

要排除任何级别的目录名称,请使用-name

<span style="background-color:#f5f5f5"><span style="color:#4a4a4a"><code>find . -type d \( -name node_modules -o -name dir2 -o -path name \) -prune -false -o -name '*.json'</code></span></span>

文章来源:https://www.cnaaa.net,转载请注明出处:https://www.cnaaa.net/archives/9059

(0)
郭靖的头像郭靖
上一篇 2023年6月16日 下午4:36
下一篇 2023年6月19日 下午4:22

相关推荐

  • 关于磁盘IO的那些事

    关于磁盘IO的那些事 一、背景 需要把生产上一份clickhouse的备份数据到测试环境上,心想也就59G 的大小,应该很快吧,殊不知压缩就搞了3个多小时,于是好奇看下磁盘IO的一些参数,分享给大家学习参考 在分析存储性能之前,需要先了解存储性能定义的三个核心指标:IOPS、Throughput、await 指标 说明 IOPS 每秒进行的IO操作次数 Th…

    2023年4月11日
    1.1K00
  • ubuntu 使用 ifupdown管理网络连接

    由于需要批量永久修改IP,研发提供的脚本是基于修改interfaces的,所以需要使用ifupdown,高版本的ubuntu使用的都是NetworkManager 卸载 NetworkManager 可能会影响你的网络连接配置,因此在卸载之前确保有其他方式管理网络连接。 步骤 1:备份当前配置 在卸载 NetworkManager 之前,最好备份当前的网络配…

    2024年5月21日
    1.2K00
  • linux(Mac)下查看文件编码及修改编码

    查看文件编码 在Linux中查看文件编码可以通过以下几种方式: 1. 在Vim中可以直接查看文件编码 即可显示文件编码格式。如果你只是想查看其它编码格式的文件或者想解决用Vim查看文件乱码的问题,那么你可以在~/.vimrc 文件中添加以下内容: 这样,就可以让vim自动识别文件编码(可以自动识别UTF-8或者GBK编码的文件),其实就是依照 fileenc…

    2023年8月15日
    1.5K00
  • Route命令详解

    route命令用来显示并设置Linux内核中的网络路由表,route命令设置的路由主要是静态路由。要实现两个不同的子网之间的通信,需要一台连接两个网络的路由器,或者同时位于两个网络的网关来实现。 在Linux系统中设置路由通常是为了解决以下问题:该Linux系统在一个局域网中,局域网中有一个网关,能够让机器访问Internet,那么就需要将这台机器的ip地址…

    2023年4月7日
    1.2K00
  • Linux 图片批量压缩工具 ImageMagick

    一个比较好用命令行下可以使用的,强大的免费图片工具 ImageMagick. 安装完成。

    2022年7月28日
    1.7K00

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

在线咨询: QQ交谈

邮件:712342017@qq.com

工作时间:周一至周五,8:30-17:30,节假日休息

关注微信