在 UNIX 查找中排除所有隐藏目录

在 UNIX 查找中排除所有隐藏目录

我正在使用以下命令进行单词搜索:

find . -exec grep -q [some_word]  '{}' \; -print -o -name .svn -prune -o -name .ssh -prune -o -name .boneyard -o -name log -prune -prune -o -name tmp -prune

是否可以使用正则表达式排除所有隐藏目录?

注意:当前命令从当前位置遍历整个树并排除那些被修剪的目录。排除需要适用于任何隐藏目录,无论其位于何处。

答案1

你想要的regex旗帜是find

find . \( ! -regex '.*/\..*' \) -exec grep -q [some_word] {} \; -print -o -name .svn -prune -o -name .ssh -prune -o -name .boneyard -o -name log -prune -prune -o -name tmp -prune

另外,请阅读手动的

相关内容