我正在处理一个文本文件。它有多个行条目,我正在尝试排序和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);
我需要在此代码或其他方式中包含唯一部分,但仍然应该在同一代码块中完成排序和唯一。如果它可以完成并写入同一个文件会很棒。在此先感谢。
答案 0 :(得分:2)
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