Linux find命令排除某个路径

Linux find命令排除某个路径

 

linux的find命令可以查找文件,例如

$ find~/ -name *.txt

就是在家目录下面,查找所有文本文件,这样家目录下面的所有的目录都会被查询一遍,但是你可能希望其中的某个目录不要参与查询,那么怎么办?比如下载目录

使用参数 -path xxx -prune -o,下面就是排除Downloads这个目录

$ find ~/ -path ~/Downloads -prune -o -name *.txt

如果是多个要排除的目录呢?那就是多个-path xxx -prune -o

例如:

$ find ~/ -path ~/Downloads -prune -o -path ~/work -prune -o -path ~/downloadSourceCode -prune -o -name *.txt

或者

$ find ~/ -type d \( -path ~/Downloads -o -path ~/work -o -path ~/downloadSourceCode  \) -prune -o -name *.txt

 

 

查找多个目录

$ find ~/Downloads ~/downloadSourceCode -name *.txt

 

查看更多find的命令的解释

http://linux.die.net/man/1/find

 

 

 

 

版权所有,禁止转载. 如需转载,请先征得博主的同意,并且表明文章转载自:IT夜班车,否则按侵权处理.

    分享到:

留言

你的邮箱是保密的 必填的信息用*表示