如何基于不同列中的字符串grep数据?
我有aa.dat具有类似下面的数据,如何基于不同列中的字符串grep数据?
frame 1 16980 O 17115H 17123H FRAME 1 16980 O 16971H 16981H
frame 1 16982 O 17110H 17121H
FRAME 1 16982 O 16961H 16978H
frame 1 16984 O 17124H 17127H
FRAME 1 16984 O 16983H 16990H
frame 1 17110 O 17102H 17225H
FRAME 1 17110 O 16951H 17138H
FRAME 2 16982 O 16961H 16978H
frame 2 16984 O 17124H 17127H
FRAME 2 16984 O 16983H 16990H
frame 2 17110 O 17102H 17225H
FRAME 2 17110 O 16951H 17138H
...
frame 3 16984 O 17124H 17127H
FRAME 3 16984 O 16983H 16990H
frame 3 17110 O 17102H 17225H
FRAME 3 17110 O 16951H 17138H
frame 4 16980 O 17115H 17123H
FRAME 4 16980 O 16971H 16981H
frame 4 16982 O 17110H 17121H
FRAME 4 16982 O 16961H 16978H
frame 4 17110 Ac 17102H 17225H
FRAME 4 17110 Ac 16952H 17118H
...
我想以“帧”和“17110”的数据只在第3列
FRAME 1 17110 O 16951H 17138H FRAME 2 17110 O 16951H 17138H
FRAME 3 17110 O 16951H 17138H
FRAME 4 17110 Ac 16952H 17118H
...
然而,我的代码
grep -E 'FRAME.*17110' aa.dat
无法从17110H组成的行中分离数据。
任何建议和帮助将不胜感激。
最佳,
莱昂
回答:
grep -P 'FRAME.*17110\W' aa.dat
简要说明,
-P
:解释图案作为一个Perl正则表达式- 追加
\W
将仅允许非字(即[^a-zA-Z_])
以上是 如何基于不同列中的字符串grep数据? 的全部内容, 来源链接: utcz.com/qa/261012.html