在 Perl 中对文本文件进行排序和 Uniq



我正在处理一个文本文件。它有多个行条目,我正在尝试对文件进行排序和统一。我正在尝试将输出写入同一个文件,但这似乎很困难。所以我正在写入另一个文件。我已经能够排序,但没有得到唯一的。我的文本文件中的某些行

AB.CD.EF
BA.CD.EF
DC.AB.EF
CD.AB.EF
AB.CD.EF
DC.AB.EF
EF.CD.AB
BA.CD.EF
EF.DC.AB etc....

我用来排序的代码是

open(FH,'<mytext.txt');
open(OFH,'>myouttext.txt');
print OFH sort <FH>;
close(OFH);
close(FH);
我需要将唯一

部分合并到此代码或其他方式中,但排序和唯一仍然应该在同一代码块中完成。如果可以完成并写入同一个文件,那就太好了。提前谢谢。

open(FH, '<', 'mytext.txt') or die $!;
open(OFH,'>', 'myouttext.txt') or die $!;
my %seen;
print OFH sort grep !$seen{$_}++, <FH>;
close(OFH);
close(FH);

使用 cmd 行将更改保存到同一文件,

sort -u -o mytext.txt mytext.txt

最新更新