相关疑难解决方法(0)

编写一个shell脚本find-greps并输出1行的文件名和内容

要查看包含"abc"的所有php文件,我可以使用这个简单的脚本:

find . -name "*php" -exec grep -l abc {} \;
Run Code Online (Sandbox Code Playgroud)

我可以省略-l,我将提取内容的一部分而不是文件名作为结果:

find . -name "*php" -exec grep abc {} \;
Run Code Online (Sandbox Code Playgroud)

我现在想要的是同时执行这两个版本但同一行的版本.

预期产量:

path1/filename1: lorem abc ipsum
path2/filename2: ipsum abc lorem
path3/filename3: non abc quod
Run Code Online (Sandbox Code Playgroud)

或多或少喜欢grep abc *.

编辑:我想将它用作一个简单的shell脚本.如果输出在一条线上会很棒,因此可以进一步加倍.但是脚本没有必要只有一行,我还是把它放在一个bash脚本文件中.

编辑2:后来我找到了"ack",这是一个很棒的工具,我现在在大多数情况下使用它而不是grep.它完成了所有这些以及更多.http://betterthangrep.com/您可以写信ack --php --nogroup abc以获得所需的结果

bash shell grep find

3
推荐指数
1
解决办法
4542
查看次数

标签 统计

bash ×1

find ×1

grep ×1

shell ×1