为什么echo'hello world'| awk'/ hello \ s / {print $ 0}'什么都没产生?

时间:2016-02-19 14:24:37

标签: regex linux macos awk

为什么这个'awk'命令什么都不产生?

   echo 'hello world' | awk '/hello\s/ {print $0}'

我认为模式/ hello \ s /应匹配任何包含'hello'后跟空格的行,对吧?

有关信息,我在Mac OS中使用awk。 awk版本是20070501。

2 个答案:

答案 0 :(得分:3)

这适用于OS X:

echo 'hello world' | awk '/hello[[:space:]]/ {print $0}'

正如gawk docs(释义)所述:

  

\s视为[[:space:]]

的简写

您还可以使用[[:blank:]]来限制空格和制表符。

无法找到一些“普通”的awk文档。 This seems legit,尽管页面的名称。

答案 1 :(得分:0)

echo 'hello world' | awk  '/^hello / {print $0}'

这将查找以“hello”

开头的每一行