[转帖]find排除一个或多个目录的方法

find,排除,一个,多个,目录,方法 · 浏览次数 : 0

小编点评

**排除多个目录的方法:** 1. 使用 `-path` 和 `-prune` 选项: ``` find . -path ./dir1 -o -path ./dir2 -o -path ./dir3 -prune -o -print ``` 2. 使用 `find` 的 `-name` 和 `-not` 选项: ``` find . -name "*.js" -not -path "./directory/*" ``` 3. 使用 `find` 的 `-type` 和 `-not` 选项: ``` find . -type f -name "pattern" ! -path "excluded path" ! -path "excluded path" ``` 4. 使用 `find` 的 `-print` 选项: ``` find . -print ``` 5. 使用 `find` 的 `-prune` 和 `-print` 选项: ``` find . -print -prune -o -print ```

正文

find排除一个或多个目录的方法

在这里插入图片描述

百度就是垃圾,搜索结果千篇一律,错抄错。google一下,总结find排除某个目录的方法:

How to exclude a directory in find . command
Use the -prune switch. For example, if you want to exclude the misc directory just add a -path ./misc -prune -o to your find command:

寻找当前目录,排除misc目录,文件类型txt:

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

    Here is an example with multiple directories:

    排除多个目录dir1,dir2,dir3的做法:

    find . -type d \( -path dir1 -o -path dir2 -o -path dir3 \) -prune -o -print
    

      Here we exclude dir1, dir2 and dir3, since in find expressions it is an action that acts on the criteria -path dir1 -o -path dir2 -o -path dir3 (if dir1 or dir2 or dir3), ANDed with type -d.

      最好加上-o print,打印。

      Further action is -o print, just print.

      下面这种情况没碰到过

      If -prune doesn’t work for you, this will:

      如果-prune 不好用,试试下面的。

      find -name "*.js" -not -path "./directory/*"
      

        其他人的方法都没试过:

        find / -name NameOfFile ! -path '*/Directory/*'
        find . -name '*.js' -and -not -path directory
        find . -type d -name proc -prune -o -name '*.js'
        $ find ./ -type f -name "pattern" ! -path "excluded path" ! -path "excluded path"
        $ find ./ -type f -name "*" ! -path "./.*" ! -path "./*/.*"
        find . -type d \
        -not \( -path */objects -prune \) \
        -not \( -path */branches -prune \) \
        -not \( -path */refs -prune \) \
        -not \( -path */logs -prune \) \
        -not \( -path */.git -prune \) \
        -not \( -path */info -prune \) \
        -not \( -path */hooks -prune \)
        

          与[转帖]find排除一个或多个目录的方法相似的内容:

          [转帖]find排除一个或多个目录的方法

          find排除一个或多个目录的方法 百度就是垃圾,搜索结果千篇一律,错抄错。google一下,总结find排除某个目录的方法: How to exclude a directory in find . command Use the -prune switch. For example, if you

          【转帖】【奇淫技巧】Linux | 查找文件,无所遁形

          theme: channing-cyan 本文正在参与 “走过Linux 三十年”话题征文活动 在Linux系统上,最常见的操作莫过于处理文本。常见文件操作陈列、查找、排序、格式转换、数据流处理等等。这篇文章着眼于文件查找,分析locate和find命令的使用方法,和运用原理以及缺陷不足。 一、导读

          [转帖]使用 find 命令在 Linux 上查找文件和目录

          https://linux.cn/article-14071-1.html 学习 find 命令的原因有很多。 不管我决心如何组织文件,似乎总有无法找到文件的时候。有时是因为我不记得最初的文件名,其他时候,我知道名字,但我不记得在哪里保存它了。甚至有时我需要一个我最初就没有创建的文件。但是,无论遇到

          [转帖]Linux-find命令报错: missing argument to `-exec'

          https://www.cnblogs.com/yeyuzhuanjia/p/17427143.html 报错提示:find: missing argument to `-exec' 今天写一个清理脚本,用到了find命令。本来是这么写的: find . -type f -mtime +7 -nam

          [转帖]Linux实用技巧——find查找指定时间内修改过的文件或目录

          https://cloud.tencent.com/developer/article/1694949 解决方案 例:查找出五分钟内修改过的文件 [root@mobius ~]$ find ./* -mmin -5 加上-mmin 参数即可, 其中后面的 -5 即表示五分钟内修改过的, 如果是+5

          [转帖]Linux中find命令使用示例

          https://zhuanlan.zhihu.com/p/99170116 Linux查找命令是类Unix操作系统中最重要且最常用的命令行实用程序之一。 查找命令可以根据你设定的参数匹配的文件指定的条件来搜索和查找文件或目录的列表。 查找可以在多种条件下使用,例如可以按权限,用户,组,文件类型,日期

          [转帖]帮你精通Linux:Find命令高阶操作4项动作

          八列属性 本文将继续探讨其高级查询功能,将分为四个方面展开讨论: 预定义动作 Predefined-Actions自定义动作 User-defined Actions与grep协同动作Operator逻辑操作 一、预定义动作 Predefined Actions 搜索是第一步,第二步是处理搜索的结果

          [转帖]ESXi error: Could not find a trusted signer

          24 October 2019河小马VMWareLeave a comment 在ESXi上安装micron 的 msecli vib的时候,有个错误信息显示: Could not find a trusted signer. 解决方案倒是很简单,在你使用的command 后面加上 “–no-sig

          [转帖]Linux下AWK、SED、GREP、FIND命令详解

          https://www.jianshu.com/p/d54e0359db01 AWK AWK是一个优良的文本处理工具,Linux和Unix环境中现有的功能最强大的数据处理引擎之一。 语法 awk [选项参数] 'script' var=value file(s) 或 awk [选项参数] -f sc

          [转帖]Linux中查找大文件两种姿势

          https://rumenz.com/rumenbiji/linux-find-du-max-file.html 使用find命令查找大文件 find命令是Linux系统管理员工具库中最强大的工具之一。它允许你根据不同的标准(包括文件大小)搜索文件和目录。 例如,如果在当前工作目录中要搜索大小超过1