我在Python中有一个实用程序脚本:
#!/usr/bin/env python
import sys
unique_lines = []
duplicate_lines = []
for line in sys.stdin:
if line in unique_lines:
duplicate_lines.append(line)
else:
unique_lines.append(line)
sys.stdout.write(line)
# optionally do something with duplicate_lines
这个简单的功能必须作为一个简单的UNIX实用程序提供,不是吗?
UNIX Bash脚本
awk '!x[$0]++'
这个命令只是告诉awk要打印哪些行。该变量$0
保存一行的全部内容,方括号是数组访问。因此,对于文件的每一行,x
如果该节点的内容!
先前未设置(),则该数组的节点将增加,并打印该行。
请执行以下操作:
cat -n file_name | sort -uk2 | sort -nk1 | cut -f2-
cat -n
将行号放在前面sort -u
删除重复数据sort -n
按前号排序cut
删除行号相似问题