http://blog.csdn.net/ysdaniel/article/details/7995681

查找cache目录下不是html的文件

  1. find ./cache ! -name '*.html' -type f

列出当前目录下的目录名,排除includes目录,后面的-print不能少

  1. find . -path './includes' -prune -o -type d -maxdepth 1 -print

排除多个目录,”(“前是带”\”的

  1. find / \( -path /home/ -o -path /root \) -prune -nouser -type f -exec ls -l {} \;

find查找文件的时候排除某个或几个文件或目录

比如要在/usr/sam目录下查找不在dir1子目录之内的所有文件

find /usr/sam -path "/usr/sam/dir1" -prune -o -print
find [-path ..] [expression] 在路径列表的后面的是表达式

-path "/usr/sam" -prune -o -print 是 -path "/usr/sam" -a -prune -o -print 的简写表达式按顺序求值, -a 和 -o 都是短路求值,与 shell 的 && 和 || 类似如果 -path "/usr/sam" 为真,则求值 -prune , -prune 返回真,与逻辑表达式为真;否则不求值 -prune,与逻辑表达式为假。如果 -path "/usr/sam" -a -prune 为假,则求值 -print ,-print返回真,或逻辑表达式为真;否则不求值 -print,或逻辑表达式为真。

这个表达式组合特例可以用伪码写为

if -path "/usr/sam" then
           -prune
else
           -print

避开多个文件夹

find /usr/sam \( -path /usr/sam/dir1 -o -path /usr/sam/file1 \) -prune -o -print

圆括号表示表达式的结合。

\ 表示引用,即指示 shell 不对后面的字符作特殊解释,而留给 find 命令去解释其意义。

查找某一确定文件,-name等选项加在-o 之后

#find /usr/sam \(-path /usr/sam/dir1 -o -path /usr/sam/file1 \) -prune -o -name "temp" -print

linux下的常用命令find,加上不同的参数,可以使你很容易的找到需要的文件,但是有些时候,你在查找文件的同时,可能不需要在某文件夹下查找,这时候-prune就用上了。

比如在当前目录下寻找pl后缀的文件,不在scripts下寻找。

find . -path './scripts' -prune -o -name '*.pl' -print

转载于:https://www.cnblogs.com/baiyw/p/3525761.html

linux find prune排除某目录或文件相关推荐

  1. linux 打包排除多个目录,linux tar打包压缩排除某个目录或文件

    linux tar打包压缩排除某个目录或文件 用tar打包时想剔除打包目录中的某个子目录或文件: 比如你想打包/home这个目录,但是/home/www.phpernote.com/目录,/home/ ...

  2. Linux中移动,复制,删除,打包排除某个目录或文件

    1.移动,复制,删除排除某个文件或目录 cp !(file1|dir2) /data/ 复制文件到/data/,排除file1和dir2 mv !(file1|dir2) /data/ 移动文件到/d ...

  3. linux find 排除某目录或文件 执行

    查找cache目录下不是html的文件 find ./cache ! -name '*.html' -type f 列出当前目录下的目录名,排除includes目录,后面的-print不能少 find ...

  4. linux配置rsync排除某些目录,10个linux rsync命令排除文件/目录

    Rsync (远程同步)是在Linux/unix系统中远程复制和同步文件和目录的最常用命令,借助rsync命令,你可以在不同的目录之间远程地复制和同步数据,跨磁盘和网络进行数据备份,在两个Linux机 ...

  5. linux tar打包压缩排除某个目录或文件

    用tar打包时想剔除打包目录中的某个子目录或文件: 比如你想打包/home这个目录,但是/home/afish/目录和/home/www/afish.php文件你都不想打包,方法是: tar -zcv ...

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

    # 在当前目录下排除abc目录,查找所有文件 find . -path "./abc" -prune -o -print# 在当前目录下排除abc目录,查找所有以.txt结尾的文件 ...

  7. Linux ls命令:查看目录下文件

    ♥️♥️♥️♥️♥️♥️通过学习 cd 和 pwd 命令,相信读者已经能够在庞大的 Linux 文件系统中,随心所欲地游荡并确定自己所在的位置了.本节继续来学习,如何知道某目录中存放了哪些文件或子目录 ...

  8. linux中如何压缩目录文件,如何在Linux中压缩和解压缩目录及其文件

    问题描述 我是Linux的新手.什么是压缩和解压缩目录及其文件的完整过程.请提及是否必须进行任何安装. 最佳解决办法 你说你是新手.也许你有Windows-experiences.如果您还没有安装软件 ...

  9. linux c 判断路径是 目录还是文件

    主要函数: stat(),opendir(),readdir(), 主要结构体:struct dirent  和 struct stat 主要宏:S_ISDIR(),     S_ISREG() 函数 ...

最新文章

  1. 粤港澳大湾区菜篮子-哲商对话·林裕豪:从玉农业谋定标准
  2. 内联函数与普通函数、成员函数与静态函数的区别(知识整理)
  3. swift. 扩展类添加属性_Swift iOS-如何动态地向现有类添加属性然后访问它们
  4. U-Boot如何向内核传递Flash的分区信息
  5. 怎么用javascript进行拖拽(转摘)
  6. Django Bootstrap开发笔记03 - Bootstrap环境配置
  7. 网络拓扑结构与静态特征
  8. JSTL标签用法:c:choosec:forEachc:ifc:whenc:set
  9. 谷歌秋季新品发布会即将召开 Pixel 4系列将正式亮相
  10. logback.xml中MaxHistory日志文件保留天数
  11. 遥感原理与应用(一)什么是遥感?
  12. H264编码格式--图文解释
  13. QTabWidget 删除tab
  14. C# 使用NPOI.XSSF对Excel进行操作
  15. 我要偷偷的学Python,然后惊呆所有人(第三天)
  16. UG/NX二次开发Siemens官方NXOPEN实例解析—2.3 Selection_UIStyler(边倒角)
  17. 量子计算机:一场改变世界的开发竞赛
  18. 冷暖自知 by 张楚
  19. mac安装sql server
  20. 理解色彩与相机内图像处理流程——流程详解

热门文章

  1. 关于excel中的查找
  2. 使用无锁的方式和有锁的方式的程序性能对比
  3. .Net环境下的缓存技术介绍 (转)
  4. DB2 9 底子(730 考试)认证指南,第 3 局部: 拜访 DB2 数据(3)
  5. Jiaozi帮忙买的Secret Garden的票拿到了,谢谢Jiaozi
  6. c语言有一个正整数加上100,c语言编程实现:一个整数,它加上100后是完全平方数,再加168又是完全平方数,求该数。...
  7. matlab exist()判断目录文件是否存在
  8. C及opencv指针释放问题
  9. 少儿编程150讲轻松学Scratch(十二)-用Scratch制作石头剪子布游戏
  10. 接口测试php代码,简易 PHP API 测试