【转】Linux下多种方法删除重复行/列

Linux下文本处理工具很丰富很强大,去重复行可用以下方法:

1
2
3
4
cat log
www.haiyun.me 192.168.1.1
www.haiyun.me 192.168.1.1
www.haiyun.me 192.168.1.2

使用uniq/sort删除重复行,仅能对整行操作。

1
2
3
4
5
uniq log
sort -u log
uniq log
www.haiyun.me 192.168.1.1
www.haiyun.me 192.168.1.2

使用awk按列删除重复行,也可按多列或整行操作。

1
2
awk '!i[$1]++' log
www.haiyun.me 192.168.1.1

使用sed删除重复行:

1
2
3
sed '$!N; /^\(.*\)\n\1$/!P; D' log
www.haiyun.me 192.168.1.1
www.haiyun.me 192.168.1.2

猜你喜欢

转载自1358440610-qq-com.iteye.com/blog/2234868
今日推荐