从文件的起始点删除文件中的重复项

时间:2016-11-08 09:48:38

标签: duplicates

输入文件

a
b
c
d
a
b
c
f
e

我尝试了以下选项:

awk '!x[$0]++' file.txt > file.txt.tmp && mv file.txt.tmp file.txt

perl -ne 'print unless $dup{$_}++;' file.txt > file.txt.tmp && mv file.txt.tmp file.txt
awk '{if (++dup[$0] == 1) print $0;}' file.txt > file.txt.tmp && mv file.txt.tmp file.txt

但它会删除重复项并提供如下输出:

a
b
c
d
f
e

但我们需要输出如下所示。

输出文件

 d
 a
 b
 c
 f
 e  

1 个答案:

答案 0 :(得分:0)

我得到了如下答案。

awk -F'|' '{k = $ 1 FS $ 2} NR == FNR {A [k] = NR; next} A [k] == FNR'file.txt file.txt