Как открыть файл, внести правку, сохранить и выйти; перемещение, копирование, поиск и замена в vim.
Содержание
vi или vim есть почти на любом сервере, поэтому основы стоит знать. Если vim непривычен, файлы можно править в nano: nano файл, подсказки по клавишам видны внизу экрана. Если nano нет — sudo apt install nano или sudo dnf install nano.
Режимы
Файл открывается командой vim файл в обычном режиме: клавиши здесь — команды (перемещение, удаление, копирование), а не текст. Чтобы печатать, перейдите в режим вставки:
i — вставка перед курсором, a — после него;
o — новая строка ниже, O — выше.
Esc возвращает в обычный режим — если запутались, нажмите его пару раз. Двоеточие в обычном режиме открывает командную строку внизу экрана: сохранение, выход, замена.
Сохранить и выйти
:w | сохранить |
:wq или :x | сохранить и выйти |
:q | выйти, если изменений нет |
:q! | выйти без сохранения |
:w !sudo tee % >/dev/null | сохранить файл, который открыли без sudo и не можете записать |
Перемещение
стрелки или h j k l | влево, вниз, вверх, вправо |
w / b | на слово вперёд / назад |
0 / $ | начало / конец строки |
gg / G | начало / конец файла |
:42 или 42G | строка 42 |
| Ctrl+F / Ctrl+B | страница вниз / вверх |
Удаление, копирование, вставка
x | удалить символ под курсором |
dd, 5dd | удалить строку, пять строк (удалённое можно вставить) |
dw | удалить слово |
yy, 5yy | скопировать строку, пять строк |
p / P | вставить ниже / выше |
J | склеить строку со следующей |
u / Ctrl+R | отменить / вернуть отменённое |
Поиск и замена
/текст | найти вперёд; n — следующее, N — предыдущее |
:s/старое/новое/g | заменить все совпадения в текущей строке |
:%s/старое/новое/g | заменить во всём файле |
:%s/старое/новое/gc | то же, с подтверждением каждой замены |
:10,20s/^/#/ | закомментировать строки с 10-й по 20-ю |
Полезные настройки
:set number / :set nonumber | показать / скрыть номера строк |
:set paste | вставить текст из буфера обмена без «лесенки» отступов; потом :set nopaste |
:syntax on | подсветка синтаксиса |
Не нашли ответ? Напишите в
поддержку — подскажем.