关于bash:使用find时排除文件夹

Exclude folders when using find

本问题已经有最佳答案,请猛点这里访问。

我想使用命令查找所有的".py"文件:

1
find / -iregex".*\.py"

但是,它还列出了python包中的".py"文件,如django。

如何在"grep"命令中排除指定的文件夹?


您可以使用-path选项排除搜索中的某些目录路径:

1
find / -iregex".*\.py" ! -path"/your/django/directory"

如果要排除多个目录,可以多次链接:

1
find / -iregex".*\.py" ! -path"/your/django/directory" ! -path"/another/dir"

您可以使用"grep-v"来反转选择。

1
find / -iregex".*\.py" | grep -v django