【问题标题】:Display duplicate lines in two columns of three在两列三列中显示重复行
【发布时间】:2014-10-21 09:21:16
【问题描述】:

我有一个包含 3 列的文件,用逗号分隔,我想在两列中显示重复的行,每列三列。这是一个例子:

SIP/Bear-out-000b8cf123,6669544,79541868
SIP/Bear-out-000b8cf456,6619259,6549449
SIP/Bear-out-000b8cf789,6619677,6593022
SIP/Bear-out-000b8cf987,6619259,6549449
SIP/Bear-out-000b8cf654,6669544,79541868

重复的列是第二和第三。第一列总是不同的。

方法是en BASH。

【问题讨论】:

  • 我想在两列三列中显示重复的行你能添加一些例子吗?
  • 你想要什么输出......你试过什么?
  • 我尝试使用 sort 命令对列进行排序,并使用 uniq 命令显示重复项。问题是第一列不同,并且不显示重复行。所有的行都是相似的,只是改变了第二列和第三列的数字
  • 输出应该是:SIP/Bear-out-000b8cf123,6669544,79541868 和 SIP/Bear-out-000b8cf456,6619259,6549449
  • 第一列必须在结果中还是第二列和第三列就足够了?

标签: linux bash shell sorting uniq


【解决方案1】:

你可以使用这个awk 命令:

awk -F, '!($2 in a){a[$2]=$0; next} a[$2]{print a[$2]; delete a[$2]}' file
SIP/Bear-out-000b8cf456,6619259,6549449
SIP/Bear-out-000b8cf123,6669544,79541868

【讨论】:

    猜你喜欢
    • 2011-12-04
    • 1970-01-01
    • 2021-08-13
    • 2019-04-11
    • 2018-07-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多