Как я могу избежать символа косой черты в vi?

Когда я пытаюсь выполнить поиск строки, начинающейся со слэша/символа в vi, курсор переходит к следующему результату поиска из предыдущего поиска. Тем не менее, я хотел бы найти буквальный символ косой черты. Как это можно сделать?

Ответ 1

Введите это:

/\/

Ответ 2

Используйте обратную косую черту.

:/\/

Это приведет к поиску следующей косой черты.

Ответ 3

Вам не нужно бежать /, если вы используете ?

?/home/my_user/ # and enter to search backwards
/               # and enter to search forwards

Смотрите здесь.

Ответ 4

Я потратил слишком много времени на это, поэтому позвольте мне быстро ответить здесь. Побег char в vi (vim также, я думаю, я использую поле CentOS здесь) является "\" , как ответ lutz от 8 лет назад. У меня есть этот материал, который был встроен в Windows, я конвертирую в Linux. Как правило, у вас может быть файл с абсолютными адресами в каталоге, и вы хотите преобразовать косые черты с "\ yatta\yatta\blah..." в "/yatta/yatta/blah...", все события во всех линиях. Для vi все строки% s, а конечный g означает все события в каждой строке. Итак, отредактируйте файл с помощью vi или vim и нажмите escape и двоеточие, чтобы получить приглашение ":", и введите:

%s/\\/\//g

Все символы "\" заменяются на "/". Но вам все равно придется менять ссылки "c:" на "/home/prod" или что-то в этом роде, чтобы сидеть перед "/yatta/yatta/blah...". Легко. Выход vi char равен "\" , поэтому вы нажимаете esc и вводите ":" для перехода в режим ввода vi cmd и введите:

%s/c:/\/home\/prod/g

Есть много быстрых "чит-листов" доступных команд vi/vim. Это вездесущий инструмент, доступный практически для каждой системы Linux/Unix - даже на взломанных iPad и т.д.

Ответ 5

--- oops, извините, я ввел информацию для замены. Escaping with\лучше для поиска

Используйте другой разделитель

:%s./.z.

заменит все "/" буквой z