2016-06-05 2 views
1

У меня есть файл, открытый в текстовом редакторе vi. Файл представляет собой список URL-адресов, например, так:Как найти определенные расширения в файле с помощью vi?

http://some768/path/file.7z 
http://some768/path/file1.7 
http://some/path712/file2.7z 
http://some/path917/file3.xyz.7z 
http://some77/path999a7z/file4.xyz.7z 

Как я могу изолировать или найти только строки с».7" расширение непосредственно в VI? например

http://some768/path/file1.7 

ответ

1

Следующая строка поиска в VI будет найти любую строку, где +0,7 находится в конце:

/\.7$

+0

OP не хочет искать .7z URL-адреса, только .7 требуется OP. Исправьте свой ответ, пожалуйста. – syadav

3

В командном режиме, используйте /\.7\n. Курсор переместится на следующее вхождение URL-адреса, заканчивающегося .7. Нажмите N или Shift+N, чтобы просмотреть все вхождения.

2

В командном режиме (нажмите ESC и введите / или ? => командный режим). Написать как

Для поиска .7 с начала файла: -

/\.7$ 

или

Для поиска .7 от конца файла: -

?\.7$ 

затем нажмите N для поиска следующего события в vi

+0

'.' Будет соответствовать любому персонажу, а не только точке. '\ .' необходимо. – hgiesel

+0

@hgiesel - вот слово .7, и это тоже в конце строки будет согласовано. и он правильно соответствует. Укажите строку, где вы думаете, что она не работает? – syadav

+0

Все, что должно быть длиннее 1 символа, заканчивается на 7, но не имеет точки перед ним. Например. "67" – hgiesel

Смежные вопросы