regex - bash 在文件中的不同行上搜索多个模式

标签 regex bash file search awk

我有很多文件,我想过滤掉包含 2 个模式的文件。然而,这些模式是不同的。我已经使用 grep 和 awk 尝试过,但在这两种情况下,它们似乎只适用于同一行上的匹配模式。我知道 grep 是基于行的,但我不太熟悉 awk。这是我想到的,但它只能打印与两个字符串匹配的行:

awk '/string1/ && /string2/' file

最佳答案

Grep 将使用 xargs 轻松处理此问题:

grep -l string1 * | xargs grep -l string2

在文件所在目录中使用此命令,将显示结果匹配。

关于regex - bash 在文件中的不同行上搜索多个模式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26086090/

相关文章:

java - 正则表达式匹配包含点的单词

python - 使用 decode() 与正则表达式对这个字符串进行转义

python - 用 ply 转义正则表达式中的空格?

c# - 引用文件

javascript - 如何在网页上多次使用JavaScript生成的类?

regex - ant 替换正则表达式 xml 换行符

git - 是否可以将 git 提交消息保存到预提交 Hook 中的文件中?

linux - Bash 脚本键/值对,与 bash 版本无关

bash - 如何在没有交互式编辑器的情况下自动使用 Bash 创建一个 cron 作业?

c - & 和 * 运算符使我的 fread() 在 C 中成功