前端之家收集整理的这篇文章主要介绍了
unix工具从文件中删除重复的行,
前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个工具来
生成测试并预测
输出.这个想法是,如果我失败了,我可以将预测与实际产出进行比较,看看它们在哪里分歧.问题是实际
输出包含一些行两次,这混淆了diff.我想
删除重复项,以便我可以很容易地比较它们.基本上,像sort -u,但没有排序.
有没有可以做到这一点的unix命令行工具?
uniq(1)
概要
uniq [OPTION]… [INPUT [OUTPUT]]
描述
Discard all but one of successive identical lines from INPUT (or standard input),writing to OUTPUT (or standard output).
或者,如果你想删除不相邻的重复行,那么这个片段的perl将会这样做:
while(<>) {
print $_ if (!$seen{$_});
$seen{$_}=1;
}