Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/search/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Search unix awk模式帮助,又名。搜索不起作用_Search_Awk - Fatal编程技术网

Search unix awk模式帮助,又名。搜索不起作用

Search unix awk模式帮助,又名。搜索不起作用,search,awk,Search,Awk,新手来这里寻求帮助 我只需要列出某些格式的行: :(dbs)G% wakanda:(5个数据库)/dev/sda1 12G 24G 12G 50%/ 不应显示与此不匹配的所有行 到目前为止,我试图通过以下方式对其进行蛮力: awk'$0~p'p=“*:*dbs*G*G*G*”/testFile 但这也列出了如下几行: 服务器:(207个数据库) 我不明白为什么它会直接忽略Gs,我已经在谷歌上搜索了相当长的时间,现在我完全迷路了,请帮助我,你能试着只在GNUawk中使用显示的示例编写并测试以下内容

新手来这里寻求帮助

我只需要列出某些格式的行:

:(dbs)G%

wakanda:(5个数据库)/dev/sda1 12G 24G 12G 50%/

不应显示与此不匹配的所有行 到目前为止,我试图通过以下方式对其进行蛮力:

awk'$0~p'p=“*:*dbs*G*G*G*”/testFile

但这也列出了如下几行:

服务器:(207个数据库)


我不明白为什么它会直接忽略Gs,我已经在谷歌上搜索了相当长的时间,现在我完全迷路了,请帮助我,你能试着只在GNU
awk
中使用显示的示例编写并测试以下内容吗

awk '/.*dbs.*([0-9]+G ){3}/' Input_file

说明:
awk
在条件方法(regexp)上工作,然后执行操作。在这里,我将检查当前行中的regex
*dbs.*([0-9]+G){3}
,如果找到regexp,则不会提到任何操作,因此默认情况下会打印行。

这非常快,而且似乎非常正确,谢谢。我不想成为一个讨厌鬼,但是如果你有时间的话,你能像我很蠢一样给我解释一下吗?@Zecmirit,当然现在也添加了详细的解释,干杯。好吧,我仔细研究了一下,它从测试文件中省略了两行我认为不应该有的内容:mysql5:(133 dbs)/dev/sda1 69G 68G 1.5G 98%/mysql16:(138 dbs)/dev/xvda40g34g6.4g84%/知道为什么吗?@Zecmirit,这只是基于你展示的尝试。请在您的问题中更新输入和预期输出的示例,然后通知我们。您希望编辑您的问题以包括所有这些示例,并更详细地解释为什么应排除其中一些示例。
*
匹配零个或多个实例,这就是为什么忽略
G
s的原因。我发现在在线检查器中检查正则表达式可以帮助我避免问题。如。