请教:如何在Vim中删除相同的重复行

Vim、Emacs配置和使用
回复
头像
nickleeh
帖子: 130
注册时间: 2008-08-06 13:24
送出感谢: 1 次
接收感谢: 0

请教:如何在Vim中删除相同的重复行

#1

帖子 nickleeh » 2008-08-22 15:54

我有个纯文本的词汇表,日积月累,不知不觉中,竟有很多重复行(即,两行的内容是一样的)。

请教: 如何删除这些重复行?Vim中用正则表达式,或者是 Perl, Python脚本都行。

(最好是通用的解决方案,在Windows下,有些Unix命令就用不了。)

非常感谢。
头像
eexpress
帖子: 58428
注册时间: 2005-08-14 21:55
来自: 长沙
送出感谢: 4 次
接收感谢: 256 次

#2

帖子 eexpress » 2008-08-22 16:05

sort
● 鸣学
头像
solcomo
帖子: 2838
注册时间: 2007-04-25 13:12
送出感谢: 0
接收感谢: 0
联系:

#3

帖子 solcomo » 2008-08-22 16:10

♜♞♝♛♚♝♞♜
♟♟♟♟♟♟♟♟
♙♙♙♙♙♙♙♙
♖♘♗♕♔♗♘♖

☠☯⚔⚓☣☦☃☕
☹☻☪☭☬⚖⚛⚜
ℜℳℬ™ ℋℯℓ℘ ℳℭ
sƂɐʍ рǀɹoʍ əɥʇ oS
头像
xiooli
帖子: 6956
注册时间: 2007-11-19 21:51
来自: 成都
送出感谢: 0
接收感谢: 3 次
联系:

#4

帖子 xiooli » 2008-08-22 16:57

cat file |sort|uniq >newfile
头像
nickleeh
帖子: 130
注册时间: 2008-08-06 13:24
送出感谢: 1 次
接收感谢: 0

#5

帖子 nickleeh » 2008-08-22 17:01

xiooli 写了:cat file |sort|uniq >newfile


Windows下没有cat命令。(还是要谢谢你)
头像
nickleeh
帖子: 130
注册时间: 2008-08-06 13:24
送出感谢: 1 次
接收感谢: 0

#6

帖子 nickleeh » 2008-08-22 17:04

eexpress 写了:sort


Unix/Linux下sort命令很好用,如 sort -u 可Windows下不行。
头像
xiooli
帖子: 6956
注册时间: 2007-11-19 21:51
来自: 成都
送出感谢: 0
接收感谢: 3 次
联系:

#7

帖子 xiooli » 2008-08-22 17:06

nickleeh 写了:
xiooli 写了:cat file |sort|uniq >newfile


Windows下没有cat命令。(还是要谢谢你)
搞那么复杂,你传上来,搞定给你发回去 :shock:
头像
solcomo
帖子: 2838
注册时间: 2007-04-25 13:12
送出感谢: 0
接收感谢: 0
联系:

#8

帖子 solcomo » 2008-08-22 17:17

perl -lne 'print unless $seen{$_}++' file
♜♞♝♛♚♝♞♜
♟♟♟♟♟♟♟♟
♙♙♙♙♙♙♙♙
♖♘♗♕♔♗♘♖

☠☯⚔⚓☣☦☃☕
☹☻☪☭☬⚖⚛⚜
ℜℳℬ™ ℋℯℓ℘ ℳℭ
sƂɐʍ рǀɹoʍ əɥʇ oS
回复

回到 “Vim和Emacs”