Bash:管道找到Grep

时间:2016-04-27 20:05:41

标签: bash grep find

以下命令通过递归搜索当前目录和所有子目录来查找所有出现的“some string”

grep -r -n  'some string' .

此命令以递归方式搜索当前目录和所有子目录,并返回* .axvw

形式的所有文件
find . -name '*.axvw' 

我想把这两个命令放在一起,所以通过递归搜索当前目录,但只查看以'axvw'结尾的文件,我得到了所有'some string'的出现。

当我尝试运行以下命令时,没有返回任何内容:

find . -name '*js' | grep -n  'some string'

我做错了什么?

2 个答案:

答案 0 :(得分:10)

您可以在id中使用-exec选项:

find

或者使用find . -name '*.axvw' -exec grep -n 'some string' {} +

xargs

答案 1 :(得分:1)

find . -name '*js' -exec grep -n 'some string' {} \;

我认为应该工作。

编辑:只是为了好玩,你也可以使用双重grep我相信。

find . | grep 'some string' | grep js