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(如果DIR1或DIR2或DIR3),以相与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

相关推荐

  • fsck命令 – 检查与修复文件系统

    fsck命令来自于英文词组“filesystem check”的缩写,其功能是用于检查与修复文件系统。若系统有过突然断电或磁盘异常的情况,建议使用fsck命令对文件系统进行检查与修复,以防数据丢失。 语法格式:  fsck [参数] 文件系统 测试环境:Centos7.6系统 常用参数: -a 自动修复文件系统 -f 强制检查 -A 依照…

    2023年8月29日
    1.8K00
  • Centos在dracut模式下如何修改系统配置文件

    1、进入dracut原因 Centos系统进入dracut的原因有很多比如:系统重要文件丢失系统配置文件配置错误等 2、恢复系统文件 2.1、dracut环境 在dracut上下文中是无法看到Centos系统文件的dracut# 2.2、找到系统盘 Centos默认安装时,系统盘是一个lv设备 如果安装时,手动修改了分区,那么可以根据实际情况找到系统设备比如…

    2023年6月12日
    2.2K00
  • 使用cloud-init新建虚拟机后重启系统网络IP地址丢失

    cloud-init 是 Linux 平台的⼀个开源⼯具,可以为云平台的 Linux 虚拟机完成⼀系列系统初始化配置。作为⼀个⾮常驻服务,开机启动时执⾏后⽴即退出,不会监听任何端⼝。 环境 问题 解决方案 如果在firstboot部分之后不使用cloud init服务,解决此问题的方法是禁用并停止cloud init服务。在第一个引导步骤之后,禁用cloud…

    2023年2月2日
    2.8K00
  • VMware-ESXI-6.7修改静态IP地址和主机名称以及许可证

    启用Shell 首先登陆网页控制台,在主界面点击“主机”–>“服务”–>“启用安全shell” 连接esxi主机 用shell工具连接esxi主机,在命令行输入“dcui”,就会出现显示器的控制台,由于没有显示器,所以就用这种方式改比较方便,如果有显示器,直接在显示器输出的界面上改就行,我这里由于是命令行,所以是黑白界面,显示器上会显示黄黑界面 设置ESXI…

    2024年5月8日
    1.7K00
  • mysql之两个db实例中有两个表对比

    两个db实例中有两个表对比要确定两个数据库实例中的两个表是否存在差异,你需要比较这两个表的所有数据。这个过程可以通过多种方法实现,以下是几个常见的方法: SQL查询比较如果两个数据库相互可访问(例如,通过数据库链接),你可以编写SQL查询来比较它们的数据。以下是一个简单的例子,演示如何比较两个表的数据: 如果这些查询返回任何行,那么这些行就是两个表之间的差异…

    2024年7月4日
    3.8K00

发表回复

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

在线咨询: QQ交谈

邮件:712342017@qq.com

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

关注微信