如何根据部分名称逐一搜索多个文件中的特定字符串

如何根据部分名称逐一搜索多个文件中的特定字符串

我会尽力解释我的问题,但请原谅我的英语..

我想做的事情对我来说似乎很简单,但是到目前为止我找到的每个解决方案都行不通。

我想创建一个 shell 脚本,根据部分名称“审查”目录中的每个文件,然后检查找到的每个文件是否包含特定字符串,如果包含,则返回 1 或 0。

到目前为止我尝试过的代码: 在此输入图像描述

不介意#note

答案1

这应该输出名称匹配*$name*并包括的 文件pattern

shopt -s globstar # needed to be able to use **
grep -l "pattern" **/*"$name"*

如果您愿意,您可以稍后再次禁用 globstar:

shopt -u globstar

替代使用find

find . -name "*$name*" -exec grep -l "pattern" {} \;

相关内容