【问题标题】:Searching for multiple strings in AWK在 AWK 中搜索多个字符串
【发布时间】:2021-01-16 10:42:44
【问题描述】:

你好吗?

我知道可以使用:awk '/string/ { print }' filename。 有什么东西可以让我使用相同的命令+多个字符串吗? 也许:awk '/string1/ /string2/ ... { print }' filename

提前致谢。

【问题讨论】:

  • /s 和 /string/ 之间的东西不是字符串,而是正则表达式。请澄清您是否正在尝试搜索正则表达式或字符串,以及是否要进行部分字段、完整字段、部分行、全行或其他类型的匹配,并告诉我们您是否要查找包含所有内容的行的“字符串”或只是其中一个或其他东西,所以我们可以最好地帮助你。实际上 - edit 您的问题是要显示涵盖所有用例的简洁、可测试的示例输入和预期输出。

标签: string awk


【解决方案1】:

是的,当然有很多方法可以完成“多字符串匹配”,例如(print 是默认操作):

$ cat file
string1
string2
string3
string4
$ awk '/string1|string2/' file
string1
string2
$ awk '/string1/ || /string2/' file
string1
string2
$

模式非常灵活,这里有一些来自gawk的文档:https://www.gnu.org/software/gawk/manual/html_node/Pattern-Overview.html

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-05-11
    • 2016-10-11
    • 1970-01-01
    • 2013-01-26
    • 2011-11-20
    相关资源
    最近更新 更多