awk或python脚本从文本文件中删除可逆行

时间:2013-09-05 06:59:56

标签: python perl bash python-3.x awk

我有一个文本文件如下:

a   b   aaaa
b   a   bbbb
c   a   abababb
x   i   ahu
a   i   ahhaha
z   c   jajaj
e   y   kakaka
a   v   jaj
a   c   papap
a   l   iaia
k   m   iaiaa
a   k   iaiaa
c   z   isisis
从这个文件

我需要比较前两列并删除可逆的条目(例如a b aaaab a bbbb)并仅打印唯一条目(例如x i ahu等。)

有人可以帮助用awk或python或perl脚本回答这个问题。

1 个答案:

答案 0 :(得分:1)

perl -anE '
  $_->{c}++, $_->{f} = [@F] for $s{ join "", sort @F[0,1] };
}{
  $s{$_}{c} == 1 and say "@{ $s{$_}{f} }" for sort keys %s;
' file

输出

a i ahhaha
a k iaiaa
a l iaia
a v jaj
e y kakaka
x i ahu
k m iaiaa