我有一个名为 test
的目录,其中包含日期范围内的子文件夹,例如 01
、02
、...31
。这所有子文件夹中都包含 .bz2 文件。我需要使用 find 命令搜索扩展名为 .bz2 的所有文件,但不包括特定范围的目录。我知道 find 。 -name ".bz2"-not -path "./01/*"
,但是写 -not -path "./01/*"
会很可怜跳过 10 个目录。那么我如何在我的 find
命令中跳过 01..19
子目录?
最佳答案
您可以在模式中为选项 -not -path
使用通配符:
find ./ -type f -name "*.bz2" -not -path "./0*/*" -not -path "./1*/*
这将排除所有以 0 或 1 开头的目录。甚至更好:
find ./ -type f -name "*.bz2" -not -path "./[01]*/*"
关于linux - 在 find 命令中排除目录范围,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35079274/