我有一个目录,有数千个其他目录,每个目录都包含一致的目录结构以及我想要为文本模式进行grep的特定文件名。
假设我已经从我的根目录DIR开始执行grep,这样的目录:
/
/dir1
/etc
/net
/file.properties
/dir2
/etc
/net
/file.properties
我希望在所有目录dir1,dir2等中搜索所有file.properties文件中的文本模式,这些文件位于“* / etc / net / file.properties”路径下
我的grep命令会在我指定的路径结构下的file.properties中为我的模式搜索所有dir1,dir2 ... dirN是什么样的?
我现在拥有的是:
grep -r "text here" --include='*/net/etc/file.properties' .
答案 0 :(得分:1)
显而易见的答案似乎是grep "text here" */etc/net/file.properties
。是否有太多目录可供使用?
如果是这样,您可能会做类似
for dir in *; do
if [ -f "$dir/net/etc/file.properties" ]; then
echo "$dir/net/etc/file.properties"
fi
done | xargs grep "text here"
答案 1 :(得分:0)