Vim Cookbook/cmd line interactive replace

Матеріал з docs.linux.org.ua — збірника документації з Unix/Linux українською мовою.

Перейти до: навігація, пошук


Інтерактивна заміна одного слова іншим (метод командного рядка)

Припустимо, що Ви хочете замінити кожне слово "ідіот" у тексті словом "менеджер". Але при цьому Ви хочете мати можливість переглянути, що саме Ви замінюєте, до здійснення заміни.

Виконайте команду:

:%s/\<ідіот\>/менеджер/gc

Дана команда здійснюватиме заміну і зупинятиметься після кожної зміни, щоб дати Вам можливість підтвердити її. Ввід "y" означає Вашу згоду, а "n" - відмову.

: Вхід до командного рядка
% Виконати цю команду на усіх рядках (% - синонім "від першого до останнього рядка")
s Скорочена форма команди :substitute.
/\<ідіот\>/ Даний вираз визначає текст, над яким Ви збираєтеся здійснювати заміну. '\<' відмічає початок слова, а '\>' - його кінець.
/менеджер/ Текст, на який здійснюватиметься заміна.
gc Прапорці
g Глобально - замінює кожне входження, не використовуючи "з початку і до кінця" на кожному рядку.
c Вимога підтвердження перед кожною заміною.

            

Особисті інструменти