vi替换vim

时间:2016-05-15 20:45:33

标签: vi

我试图用经典vi中的单词替换换行符(在arch linux中)。 substitute命令如下所示:

:%S / \ N /字/克

在vim中有效。我正在处理的文件是来自Calc的复制/粘贴的结果(来自数据仓库程序的csv)。

VIM输出是线被替换(导致非常低的线,这是我必须输入到另一个程序的命令)。 我在VIM上的Windows和Linux中对此进行了测试。

同一文件的Vi输出为:“替换模式匹配失败”

我使用的vi版本是Arch中的默认版本:版本4.0(gritter)12/25/06

哪个是经典的vi。

我不能在VIM中做到这一点,但为什么这不适用于vi?有没有办法让这项工作?我试图找一个解决方案,但没有遇到任何有用的东西。

1 个答案:

答案 0 :(得分:1)

vi使用ex regular-expressions,其中大多数是POSIX Basic Regular Expressions,并且不需要C风格的转义序列。可以使用join commend from ex代替!以防止修改(通常会调整空格)。

:%j!

替代命令可用于模拟替换换行符。

:2,$s/^/start
:1,$-s/$/end
:%j!
相关问题