在组中显示结果

时间:2013-06-01 06:51:30

标签: linux grep

我只是需要帮助,想知道我想要的是否可能。这是我的档案 看起来像

COLUMN1 | COLUMN2 | COLUMN3
--------------------------------------------
A=dog   |  B=354  |  C=343
A=cat   |  B=435  |  B=334
C=324   |  A=cow  |  A=pig

有时,我需要在特定字段上过滤类似的模式并将其显示在上面 我的屏幕。实施例

grep -Po 'A=(\w+)' test.txt

然后我会得到

A=dog
A=cat
A=bird
A=cow
A=pig

但是,我想问的是,如果可能的话,可以显示另一列并显示 它在第一列旁边,这是我清楚的例子

A=dog     B=354
A=cat     B=435
A=bird    B=334
A=cow
A=pig

或者有时候,我想要显示各自组的3列。这是 单独使用'Grep'可以吗?

1 个答案:

答案 0 :(得分:0)

只想分享我在搜索几个小时后所做的事情,找不到简单的解决方案:

<强> $ grep -Po'A =(\ w +)'test.txt&gt; A.TXT
$ grep -Po'B =(\ d +)'test.txt&gt; b.txt
$ pr -mtS a.txt b.txt

就是这样:)

您也可以将此保存在.csv

$ pr -mts:a.txt b.txt&gt; combine.csv
*注意:冒号“:”是您的分隔符。