2017-02-09 304 views

回答

1

您也可以用Perl的正则表达式标志Po标志尝试显示输出中,仅匹配部分:

grep -oP "^\S+" filename.txt 
0

随着POSIX字符类:

grep -o '^[^[:blank:]]*' filename.txt 

至于其中\s是可用:

  • POSIX grep支持LY基本正则表达式,或者叫grep -E时,扩展正则表达式,这两者有没有\s
  • GNU grep支持\s[[:space:]]
  • BSD grep的代名词似乎并不支持\s

另外,你可以用awk与明确设置为一个空间,让领先的空白都不会忽略的字段分隔符:

awk -F ' ' '{ print $1 }' 
相关问题