我想grep命令的文件的多行。该文件的示例originalfile.txt
可能是:
num=12
workers not specified
length= 128
Using array element
num= 24
workers not specified
length= 128
Using array element
......
我grep
只想像num
和with一样的有价值的行length
:
num=12
length= 128
num= 24
length= 128
......
我grep
只说一种模式,num
但是我不知道如何做一种以上的模式。
$ grep "num" originalfile.txt
事实证明,在同一行中有一些awk
似乎找不到的参数,即:
.... time= 1.234 Gflop/s= 3.4556 .....
它过滤第一个,但不过滤Gflop / s。有没有办法在同一行上递归查找?
使用-E
选项
来自man grep:
-E,-extended-regexp
将PATTERN解释为扩展的正则表达式(请参见下文)。
$ grep -E 'length|num' data
num=12
length= 128
num= 24
length= 128
如果只想获取可以传送到的号码,请更新 awk
grep -E 'length|num' data | awk -F'= ?' '{print $2}'
但是,然后您可以在signle awk命令中完成所有操作,并避免使用grep
awk -F'= ?' '/length/||/num/{print $2}' data
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句