Введение
В этой лабораторной работе вы освоите фундаментальные навыки работы с двумя основными текстовыми редакторами в Linux: vi/vim и nano. Это самые популярные редакторы в средах Linux, каждый из которых обладает своими преимуществами и сценариями использования.
Вы начнете с текстового редактора vi — мощного и повсеместно распространенного инструмента в Unix-подобных системах. Вы научитесь создавать файлы, вводить текст в режиме вставки (Insert Mode), сохранять работу с помощью команд :w и :wq, перемещаться по тексту, выполнять поиск и базовые операции редактирования, такие как удаление слов.
Во второй части лабораторной работы вы познакомитесь с nano — более дружелюбным редактором, который идеально подходит для начинающих. Вы изучите его интуитивно понятный интерфейс, освоите основные операции редактирования и поймете, в каких случаях стоит выбрать nano вместо vim.
К концу этой лабораторной работы вы будете уверенно пользоваться обоими редакторами и понимать, какой инструмент лучше подходит для различных задач в вашем рабочем процессе Linux.
Создание файла и ввод текста в режиме вставки
В этом шаге вы узнаете, как использовать редактор vi для создания нового текстового файла и ввода текста. vi (и его современная версия vim) — это мощный и повсеместно распространенный текстовый редактор в Unix-подобных операционных системах. Он работает в разных режимах, два самых основных из которых — это нормальный режим (Normal Mode, для команд) и режим вставки (Insert Mode, для ввода текста).
Сначала убедитесь, что вы находитесь в правильной рабочей директории. Вся работа в этой лабораторной будет выполняться в директории ~/project.
Откройте терминал. Приглашение командной строки должно указывать, что вы находитесь в директории
project. Вы можете проверить полный путь с помощью командыpwd(print working directory).pwdВы должны увидеть следующий вывод, подтверждающий ваше местоположение:
/home/labex/project
Теперь запустите редактор
viи создайте новый файл с именемtest.txt. После выполнения этой командыviзапустится и займет окно вашего терминала.vi test.txtЭкран терминала очистится, и вы увидите экран с тильдами (
~) вдоль левого края. Они обозначают пустые строки. В нижней части экрана вы увидите имя файла"test.txt" [New File]. В данный момент вы находитесь в нормальном режиме.Чтобы начать печатать текст, нужно переключиться в режим вставки. Нажмите клавишу
iна клавиатуре.iОбратите внимание, что в нижней части экрана появилась надпись
-- INSERT --. Это подтверждает, что вы находитесь в режиме вставки и теперь можете вводить текст непосредственно в файл.Введите следующее предложение:
Now is the time for all good men to come to the aid of their country.
На данный момент введенный текст находится в буфере памяти редактора, но еще не сохранен на диске. В следующем шаге вы узнаете, как сохранить работу и выйти из редактора.
Сохранение и выход из файла с помощью :w и :wq
В этом шаге вы узнаете, как сохранить изменения и выйти из редактора vi. Эти действия выполняются с помощью команд в нормальном режиме. Поскольку после предыдущего шага вы находитесь в режиме вставки, сначала нужно вернуться в нормальный режим.
Чтобы переключиться из режима вставки обратно в нормальный режим, нажмите клавишу
Esc.EscВы заметите, что индикатор
-- INSERT --в нижней части экрана исчез. Это означает, что вы теперь в нормальном режиме, где нажатия клавиш интерпретируются как команды, а не как ввод текста.Теперь давайте сохраним файл. В нормальном режиме команды, начинающиеся с двоеточия (
:), отображаются в командной строке в нижней части экрана. Чтобы записать (сохранить) файл, используйте команду:w.Введите следующую последовательность и нажмите
Enter::wПосле нажатия
Enterviзапишет содержимое буфера в файлtest.txt. В нижней части экрана появится подтверждающее сообщение, похожее на это:"test.txt" [New] 1L, 79C writtenЭто сообщение подтверждает, что файл
test.txtбыл сохранен (1 строка, 79 символов).Наконец, чтобы выйти из
vi, можно использовать команду:q(quit). Более распространенная команда —:wq, которая объединяет запись файла и выход в одно действие. Поскольку вы уже находитесь в нормальном режиме, введите следующее и нажмитеEnter::wqЭта команда сохраняет все последние изменения, закрывает редактор
viи возвращает вас к приглашению командной строки в терминале. Теперь файлtest.txtсохранен в вашей директории~/project.
Навигация и поиск текста с помощью gg, h, j, k, l и /
В этом шаге вы попрактикуетесь в использовании мощных команд навигации и поиска vi. Эти команды позволяют эффективно перемещать курсор и находить текст без использования мыши. Все эти операции выполняются в нормальном режиме.
Сначала снова откройте файл
test.txt. В командной строке в директории~/projectвведите:vi test.txtРедактор откроется, отображая содержимое файла. Курсор, скорее всего, будет находиться в начале первой строки.
Чтобы убедиться, что курсор находится в самом начале файла, можно использовать команду
gg. Находясь в нормальном режиме (нажмитеEsc, если не уверены), введитеgg.ggКурсор мгновенно переместится к первому символу первой строки — букве 'N'.
Основной способ перемещения курсора в
vi— это клавишиh,j,kиl. Это базовый навык для любого пользователяvi.hперемещает курсор на один символ влево.lперемещает курсор на один символ вправо.jперемещает курсор на одну строку вниз.kперемещает курсор на одну строку вверх.
Попробуйте нажимать эти клавиши, чтобы перемещать курсор по предложению. Этот метод навигации работает в любом терминале.
Теперь давайте выполним поиск текста. Команда
/используется для поиска вперед по файлу. Чтобы найти все вхождения буквы 'a', выполните следующие действия: a. Убедитесь, что вы находитесь в нормальном режиме (нажмитеEsc). b. Введите/, а затем символ, который хотите найти, в данном случаеa. Затем нажмитеEnter./aКурсор переместится к первому найденному 'a' после текущей позиции.
c. Чтобы найти следующее вхождение того же поискового запроса, просто нажмите клавишу
n(от слова "next").nНажмите
nнесколько раз, чтобы перебрать все 'a' в файле.
Теперь вы освоили базовую навигацию и поиск. В следующем шаге вы узнаете, как удалять текст.
Удаление слова с помощью dw и выход без сохранения с помощью :q!
В этом шаге вы узнаете, как удалять текст и как выйти из vi без сохранения изменений. Это критически важный навык, если вы допустили ошибку и хотите вернуться к последней сохраненной версии файла. Редактор vi с файлом test.txt должен оставаться открытым с предыдущего шага.
Сначала переместим курсор к слову, которое хотим удалить. Убедитесь, что вы находитесь в нормальном режиме (нажмите
Esc, если не уверены). Используйте клавишиhиl, чтобы переместить курсор на первую букву словаtime.Когда курсор находится на
tв словеtime, введите командуdw. Эта команда означает "delete word" (удалить слово).dwВы увидите, что слово
timeи пробел после него исчезли с экрана. Предложение теперь выглядит некорректно, что идеально подходит для нашего следующего действия.Вы изменили файл в буфере редактора. Давайте представим, что это удаление было ошибкой. Вместо сохранения этой некорректной версии вы выйдете из редактора, отменив изменения. Команда для этого —
:q!. Букваqозначает "quit" (выход), а!принудительно выполняет действие, игнорируя любые несохраненные изменения.a. Убедитесь, что вы находитесь в нормальном режиме (нажмите
Esc). b. Введите следующую команду и нажмитеEnter::q!Эта команда немедленно закроет редактор
viи вернет вас к приглашению командной строки. Поскольку вы использовали:q!, удаление словаtimeне было сохранено в файлеtest.txt. Если вы откроете файл снова, словоtimeбудет на месте.
Запуск интерактивного обучения vimtutor для дальнейшей практики
В этом шаге вы познакомитесь с vimtutor — интерактивным учебным пособием, разработанным для обучения навыкам vi/vim на практике. В этой лабораторной работе мы рассмотрели только основы, но vimtutor предлагает комплексный курс в удобном темпе, который настоятельно рекомендуется всем новым пользователям.
Вы должны находиться в командной строке в директории
~/project. Чтобы запустить обучение, просто введите командуvimtutorи нажмитеEnter.vimtutorЭта команда открывает
viсо специальным учебным файлом. Сам файл содержит все инструкции. Вы будете читать текст, а затем практиковать описанные команды прямо в этом файле. Это безопасный и эффективный способ обучения, так как вы тренируетесь на временной копии файла.Учебник разделен на уроки, его прохождение занимает около 25-30 минут. Вы можете работать в своем собственном темпе.
Когда вы закончите обучение (или захотите выйти в любой момент), вы можете выйти так же, как из любого сеанса
vi. Поскольку вам не нужно сохранять изменения в учебном файле, лучший способ выйти — использовать команду:q!.a. Нажмите
Esc, чтобы убедиться, что вы в нормальном режиме. b. Введите:q!и нажмитеEnter.:q!
На этом практическая часть лабораторной работы завершена. Выполнив эти шаги, вы освоили фундаментальные навыки создания, редактирования, сохранения и навигации по файлам с помощью редактора vi.
Введение в редактор nano
В этом шаге вы узнаете, как использовать nano — удобный текстовый редактор, который идеально подходит для начинающих и быстрого редактирования. В отличие от vi, nano отображает полезные сочетания клавиш в нижней части экрана и не имеет разных режимов, что делает его более интуитивно понятным для новых пользователей.
Сначала создадим новый файл с помощью
nano. В командной строке в директории~/projectвведите:nano welcome.txtРедактор
nanoоткроется с пустым файлом. Обратите внимание на полезное меню внизу, показывающее доступные функции.В отличие от
vi, вnanoможно сразу начинать печатать без переключения режимов. Скопируйте и вставьте следующий текст:
Welcome to Linux Text Editing! This file was created using the nano editor. Nano is beginner-friendly and intuitive. Key advantages of nano: - No modes to switch between - Shortcuts displayed at bottom - Easy to learn and use - Perfect for quick editsТеперь сохраним файл. В
nanoсохранение называется Write Out. НажмитеCtrl+O, чтобы начать запись. Вы увидите запрос имени файла. Текущее имяwelcome.txtуже отображается, поэтому просто нажмитеEnterдля подтверждения и сохранения.В нижней части экрана появится сообщение о том, что файл успешно записан, с указанием количества строк.
Чтобы выйти из
nano, нажмитеCtrl+X. Поскольку вы уже сохранили файл,nanoнемедленно закроется и вернет вас в командную строку. Если вы нажметеCtrl+Xдо сохранения,nanoспросит, нужно ли сохранить изменения; нажмитеY, а затемEnterдля сохранения и выхода.
Сравнение nano и vi/vim: когда использовать каждый редактор
В этом заключительном шаге вы узнаете об основных различиях между nano и vi/vim и поймете, когда использовать каждый из них. Давайте создадим файл сравнения, используя оба редактора, чтобы продемонстрировать их различия.
Сначала используем
nanoдля создания файла сравнения:nano editor_comparison.txtВведите следующее содержимое в nano:
TEXT EDITOR COMPARISON: nano vs vi/vim NANO EDITOR: Pros: - Beginner-friendly interface - No modes to learn - Shortcuts displayed on screen - Immediate text input - Good for quick edits and simple tasks Cons: - Limited advanced features - Less efficient for complex editing - Not available on all systemsСохраните файл и выйдите из nano.
Теперь откроем этот же файл с помощью
vi, чтобы добавить больше контента:vi editor_comparison.txtПерейдите в конец файла с помощью
G(заглавная G), затем нажмитеo, чтобы открыть новую строку и войти в режим вставки. Добавьте следующее содержимое:VI/VIM EDITOR: Pros: - Extremely powerful and feature-rich - Available on virtually all Unix/Linux systems - Highly efficient once mastered - Excellent for programming and complex editing - Extensive customization options Cons: - Steep learning curve - Modal interface can be confusing for beginners - Requires memorizing many commandsНажмите
Escдля возврата в нормальный режим, затем сохраните и выйдите с помощью:wq.Давайте просмотрим готовый файл сравнения:
cat editor_comparison.txtЭто отобразит полное сравнение, показывающее контент, добавленный обоими редакторами.
Когда использовать каждый редактор:
Используйте nano, если:
- Вы новичок в редактировании текста в Linux
- Вам нужно сделать быстрое, простое изменение
- Вы изредка работаете с конфигурационными файлами
- Вы предпочитаете простой и интуитивно понятный интерфейс
Используйте vi/vim, если:
- Вы занимаетесь программированием или сложной обработкой текста
- Вы работаете на удаленных серверах (vi доступен всегда)
- Вам нужны расширенные функции, такие как макросы, плагины или сложный поиск/замена
- Эффективность и скорость важны для вас после изучения команд
Оба редактора являются ценными инструментами в арсенале пользователя Linux, и знание обоих дает вам гибкость в различных ситуациях.
Резюме
В этой лабораторной работе вы научились использовать два основных текстовых редактора в Linux: vi/vim и nano.
С vi/vim вы освоили фундаментальные концепции модального редактирования, научившись переключаться между нормальным режимом и режимом вставки. Вы практиковались в создании файлов, вводе текста, сохранении с помощью :w и :wq, навигации с помощью клавиш перемещения (h, j, k, l), поиске с помощью /, редактировании с помощью команд типа dw и выходе без сохранения с помощью :q!. Вы также открыли для себя интерактивный vimtutor для дальнейшего обучения.
С nano вы познакомились с более дружелюбным подходом к редактированию текста. Вы научились создавать и редактировать файлы, не беспокоясь о режимах, использовали интуитивно понятный интерфейс с подсказками в нижней части экрана и практиковали базовые операции, такие как сохранение и выход.
Основные выводы:
nanoидеально подходит для начинающих и быстрого редактирования благодаря интуитивному интерфейсу и видимым подсказкам.vi/vimболее мощный и эффективный для сложных задач редактирования, но требует больше времени на обучение.- Оба редактора полезны: nano — для простоты, vim — для мощности и доступности.
- Понимание того, когда использовать каждый редактор, сделает вас более эффективным в различных сценариях работы в Linux.
Теперь у вас есть база, чтобы выбирать подходящий текстовый редактор для своих нужд и продолжать развивать навыки работы с обоими инструментами.



