2

我想用 vim 代替cygdrive/e所有cygdrive/d。但我无法正确获得匹配模式。这是我的命令:

s/cygdrive\/e/cygdrive\/d/g

它不起作用。谁能告诉我有什么问题?

谢谢,

4

3 回答 3

3

vim 允许你指定分隔符.. (s 之后的第一个字符是分隔符)

s/cygdrive\/e/cygdrive\/d/g 

使用行范围参数 .. 和 # 作为分隔符

ESC:
:1,$    s#/cygdrive/e#/cygdrive/d#g 
于 2010-10-21T05:42:17.413 回答
2

您的搜索模式和替换字符串看起来不错。

确保您在ex尝试时处于模式。

所以按ESC,然后:,然后

%s/cygdrive\/e/cygdrive\/d/g

但是,如果您只想在当前行中替换所有他,您可以执行以下操作:

s/cygdrive\/e/cygdrive\/d/g
于 2010-10-21T05:07:46.257 回答
-2

您必须转义像这样的特殊字符 s/cygdrive\/e/cygdrive\/d/g

于 2010-10-21T05:05:44.047 回答