Yur*_*j73 15 shell grep regular-expression
我正在尝试 grep 用户名:
users | grep "^\b\w*\b" -P
Run Code Online (Sandbox Code Playgroud)
我怎样才能让它只显示第一场比赛grep?
ken*_*orb 43
要仅显示与 的第一个匹配项grep,请使用-m参数,例如:
grep -m1 pattern file
Run Code Online (Sandbox Code Playgroud)
-m num,--max-count=num在 num 匹配后停止读取文件。
如果您真的只想返回第一个单词并且想要这样做grep并且您grep恰好是 GNU 的最新版本grep,那么您可能需要该-o选项。我相信你可以在没有-P和\b开始时做到这一点并不是真正必要的。因此:users | grep -o "^\w*\b"。
然而,正如@manatwork提到,壳牌内置read或cut/ sed/awk似乎是更合适的(特别是一旦你到你需要做的事情更多了点)。