Занятие 06. Текстовые редакторы vi и nano
⚡ Кратко: суть темы
Файлы в Linux — текстовые, и править их можно прямо в терминале. vi (и его улучшенный клон vim) — старейший и самый распространённый редактор UNIX-систем; у него два режима: командный (клавиши = команды) и режим вставки (клавиши = текст, вход — i, выход — Esc). nano — простой редактор без режимов: открыл — печатаешь, подсказки внизу экрана.
- vi: открыть —
vi /tmp/file; вставка —i; выйти с сохранением —Esc, затем:wq(илиZZ,:x); без сохранения —:q!; удалить строку —dd, отменить —u. - nano: открыть —
nano /tmp/file; сохранить —Ctrl+O; выйти —Ctrl+X. - Бонус лекции — конвейер обработки текста:
df -h | grep -w / | awk '{print $5}' | sed 's/%//g' > /tmp/df— процент занятости корневого раздела без знака %.
Что запомнить: в vi сначала Esc (выход из вставки), потом команды; «застряли» — Esc и :q!.
Частая ошибка: печатать текст в командном режиме vi — клавиши сработают как команды и испортят файл.
📖 О чём этот урок
До сих пор мы добавляли текст в файлы только перенаправлениями (echo "..." >> файл). Теперь учимся редактировать файлы по-настоящему — прямо в терминале: разбираем культовый vi с его двумя режимами работы и набором команд (i, :wq, dd, yy, p, u) и дружелюбный nano, где всё подсказано внизу экрана. Во второй части — практика пайпинга из занятия 04 на новых командах: df (диск), grep (поиск), awk (колонки) и sed (замена текста) объединяются в конвейер, который вытаскивает из вывода df -h одно-единственное число.
Что изучим
- Текстовый редактор vi: история, vim (Vi Improved), два режима работы — командный и вставки
- Команды vi:
i,Esc,:w,:wq,:x,ZZ,:q!,dd,yy,p,u,G, поиск/ - Текстовый редактор nano: интерфейс, подсказки,
Ctrl+O/Ctrl+X - Piping на практике:
df -h, ключиgrep(-w,-i,-v,-r,-A/-B/-C), колонкиawk '{print $N}', заменыsed 's/что/на_что/g'
📚 Что повторить перед изучением
- ← Занятие 05: Summary Session 2 — закрепление потоков и конвейеров; пайпинг из этого урока строится на них
- Занятие 04: Pipe и перенаправления —
|,>,>>,history,tailактивно используются и в лекции, и в ДЗ
🎯 Что изучать дальше
- → Занятие 07: Summary Session 3 — повторение и практика по текстовым редакторам
- Затем — SSH: подключаемся к удалённым машинам, где vi/nano — единственный способ править конфиги