相关疑难解决方法(0)

删除vi中的重复行?

我有一个文本文件,其中包含一长串条目(每行一个).其中一些是重复的,我想知道是否有可能(如果是这样,如何)删除任何重复.如果可能的话,我有兴趣在vi/vim中执行此操作.

vim duplicates

112
推荐指数
6
解决办法
6万
查看次数

在 Vim 中,如何删除某处重复的所有行

我有一个包含以下行的文件:

one one
one one
two two two
one one
three three
one one
three three
four
Run Code Online (Sandbox Code Playgroud)

我想从文件中删除所有出现的重复行,只保留非重复行。因此,在上面的示例中,结果应该是:

two two two
four
Run Code Online (Sandbox Code Playgroud)

我看到了这个类似问题的答案。我尝试修改前一行,如下所示:

:syn clear Repeat | g/^\(.*\)\n\ze\%(.*\n\)*\1$/exe 'syn match Repeat "^' . escape(getline ('.'), '".\^$*[]') . '$"' | d
Run Code Online (Sandbox Code Playgroud)

但它不会删除所有出现的重复行,它仅删除一些出现的重复行。

我怎样才能在 vim 中做到这一点?或者具体来说我怎样才能在 vim 中使用 ex 做到这一点?

澄清一下,我不是在寻找sort u.

vim ex

6
推荐指数
2
解决办法
4383
查看次数

标签 统计

vim ×2

duplicates ×1

ex ×1