подстановка строки vim - PullRequest
       15

подстановка строки vim

2 голосов
/ 21 октября 2010

Я хочу заменить все cygdrive/e на cygdrive/d, используя vim.Но я не могу получить соответствующий образец правильно.Вот моя команда:

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

это не работает.Кто-нибудь может показать мне, что не так?

Спасибо,

Ответы [ 3 ]

3 голосов
/ 21 октября 2010

vim позволяет указать разделитель .. (Первый символ после s является разделителем)

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

с использованием аргумента диапазона строки .. и # в качестве разделителя

ESC:
:1,$    s#/cygdrive/e#/cygdrive/d#g 
2 голосов
/ 21 октября 2010

Ваш шаблон поиска и строка замены выглядят хорошо.

Убедитесь, что вы находитесь в режиме ex, когда попробуете.

Итак, нажмите ESC, затем :, а затем

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

Но если вы хотите, чтобы все он заменял только в текущей строке, вы можете сделать:

s/cygdrive\/e/cygdrive\/d/g
0 голосов
/ 21 октября 2010

Вы должны уйти от специального символа как это с / cygdrive \ / е / cygdrive \ / д / г

...