Работа с редактором Vi в Linux
Vi или Визуальный редактор — это текстовый редактор по умолчанию, который поставляется с большинством систем Linux. Это текстовый редактор на базе терминала, который пользователям необходимо изучить, в основном, когда более удобные текстовые редакторы недоступны в системе.
Некоторые другие причины использовать Vi включают:
- Vi доступен почти на всех операционных системах.
- Продуманный набор сочетаний клавиш, состоящих из коротких нажатий.
- Вы можете использовать Vi в качестве отличного html-редактора.
- Команды Vi настолько богаты, что вам практически не нужно отрывать руки от клавиатуры.
- Редактор Vi создает файлы небольшого размера, что позволяет не занимать много места в памяти.
- Он бесплатный.
Создание файла с помощью Vi
Чтобы создать файл в Vi, используйте следующую команду:
Чтобы создать файл в определенном месте, используйте следующую команду:

Открытие уже существующего файла
Для того чтобы открыть уже существующий файл, используйте следующую команду:
Файл с указанным именем будет создан, если он еще не существует в системе.
Режимы работы Vi
Прежде чем приступить к работе с файлами, важно узнать, что редактор Vi работает в двух режимах: командный режим и режим вставки. В командном режиме вы можете перемещаться по тексту, искать слова в файле, сохранять файл и т.д. Вы можете выполнять различные команды, но не можете вставлять что-либо в текст; для этого вам нужно находиться в режиме вставки. Помните, что в командном режиме набранные вами клавиши будут выполнять только команды, а в режиме вставки вы сможете набирать и редактировать текст.
Переключение между режимами
Когда вы впервые создаете или открываете файл в Vi, вы находитесь в командном режиме. Хотя кажется, что здесь можно набирать текст, это не так. Чтобы написать что-либо, нужно перейти в режим вставки, нажав клавишу i. Чтобы вернуться в командный режим, достаточно нажать клавишу esc.
Примечание: Важно отметить, что редактор Vi чувствителен к регистру. Поэтому если ваши клавиши не дают желаемых результатов, убедитесь, что вы случайно не нажали клавишу Caps Lock.
Командный режим
Vi обычно запускается в командном режиме. Вы можете выполнять административные операции с файлами, такие как сохранение файла, выполнение команд, перемещение курсора по файлу, вырезание/выдергивание и вставка строк и слов в файл. Командный режим также позволяет находить и заменять текст в файле.
Перемещение курсора по файлу:
Обычно вы можете перемещать курсор по тексту в файлах с помощью клавиш со стрелками вверх, вниз, влево и вправо на клавиатуре. Если вы используете удаленный терминал и клавиши со стрелками не работают нужным образом, вы можете использовать следующие клавиши в качестве замены:
Перемещение влево: h
Перемещение вправо: l
Перемещение вверх: k
Переместить вниз: j
Режим вставки
Чтобы ввести текст в файл, необходимо находиться в режиме вставки. Все, что вы вводите в этом режиме, будет считаться текстом и добавляться в файл.
Работа с файлами vi
Вставка текста
После создания нового файла или открытия уже существующего вы можете написать в нем текст, предварительно переключившись в режим вставки нажатием клавиши i. Вы заметите, что сама команда vi обычно не появляется на экране. Вы можете набрать несколько строк и нажать <return> в конце каждой строки. Для длинных строк vi не обводит текст; он обрывает строку у края экрана.
Выбор текста
Выделить текст для копирования, вырезания и вставки можно только в командном режиме. Для выделения текста установите курсор в левой или правой части текста, который вы хотите выделить, и нажмите клавишу v. Затем вы можете перемещать курсор для выделения текста.
Копирование текста
После выделения текста, как описано выше, вы можете нажать y, чтобы скопировать текст, и x, чтобы вырезать текст. Чтобы вставить текст, установите курсор в нужное место и нажмите клавишу p, чтобы вставить скопированный или вырезанный текст. Помните, что для выполнения этих операций вы должны находиться в командном режиме.
Удаление текста
Для того чтобы удалить символ из файла, переместите курсор на нужную букву и нажмите клавишу x. Чтобы удалить больше символов, например, три, наберите 3x.
Сохранение и выход из файла
В командном режиме введите :wq и нажмите Enter, чтобы записать файл на диск и выйти из vi. Команда :w будет только записывать файл на диск, а :q — выходить из vi без сохранения файла. Вы также можете разделить эту команду, например, набрать :w и нажать Enter для записи файла на диск без выхода из программы или набрать :q для выхода из vi без сохранения файла.

Если вы внесли изменения в файл и вышли из программы без сохранения изменений, vi выдаст вам предупреждение. Вы можете проигнорировать предупреждение, используя команду :q! и нажмите Enter.
Общие команды vi
Вы будете использовать следующие команды управления Vi для работы с файлами в редакторе Vi:
Работа с редактором vi
Текстовым редактором (text editor) называют программу, которая предназначена для редактирования (составления и изменения) файлов, содержащих только текст, например: письмо, программа на языке C, системный конфигурационный файл. При том, что имеется много различных редакторов для системы Linux, единственный, чьё присутствие будет гарантировано в любой системе UNIX или Linux═ — это vi (visual editor). Редактор vi не является самым простым в использовании, и его интерфейс не очень понятен сам по себе. Однако ввиду своей распространённости, а отчасти и потому, что владение им в некоторых ситуациях необходимо, ему посвящается внимание в этой книге.
Выбор текстового редактора обычно является вопросом индивидуального вкуса. Многие пользователи предпочитают пышный, мощный и наделённый подсказками редактор emacs. Этот редактор имеет больше функций, чем любая другая программа в мире UNIX. К примеру, в редакторе emacs имеется собственный встроенный диалект языка программирования LISP. Кроме того, у этого редактора имеется множество расширений (одно из них═ — программа искусственного интеллекта типа программы Eliza). Однако, поскольку сам редактор и файлы, которые его поддерживают, сравнительно велики, этот редактор может не быть установлен на некоторых системах. Напротив, редактор vi является небольшим и мощным, однако использовать его сложнее. Тем не менее, при знакомстве с редактором vi он в действительности оказывается очень простым.
В этом разделе даётся лишь введение в vi ═ — мы будем обсуждать не все его функции, а лишь нужные для того, чтобы начать работать в нем. Дополнительную информацию можно получить из экранной документации к команде vi .
Основные понятия
В любой момент при работе в редакторе vi вы находитесь в одном из трёх режимов редактора: командный режим (command mode), режим ввода (insert mode) и режим последней строки (last line mode).
При запуске редактора vi вы оказываетесь в командном режиме. В этом режиме можно давать команды для редактирования файлов или перейти в другой режим. Например, вводя x в командном режиме мы удаляем символ, на который указывает курсор. Клавиши-стрелки перемещают курсор по редактируемому файлу. Как правило, команды, используемые в командном режиме, состоят из одного или двух символов.
Основной ввод и редактирование текста осуществляется в режиме ввода. При использовании редактора vi основное время, скорее всего, будет проводиться именно в этом режиме. Переход в режим ввода из командного режима осуществляется командой i (от слова insert). Находясь в режиме ввода, можно вводить текст в то место, куда указывает курсор. Выход из режима ввода в командный режим осуществляется клавишей Esc .
Режим последней строки═ — это специальный режим, в котором редактору даются сложные команды. При вводе этих команд они отображаются в последней строке экрана (отсюда пошло название режима). Например, если ввести в командном режиме команду : , то осуществится переход в режим последней строки, и можно будет вводить такие команды, как wq (записать файл и покинуть редактор vi ) или q! (выйти из редактора vi без сохранения изменений). В режиме последней строки обычно вводятся команды, название которых состоит из нескольких символов. В этом режиме в последнюю строку вводится команда, после чего нажимается клавиша Enter , и команда исполняется.
Запуск редактора vi
Наилучшим способом уяснить для себя все концепции редактора vi будет запустить его и отредактировать в нем некоторый файл. В приводимых ниже « экранчиках » будет показано всего несколько строк текста, как будто текстовый экран имеет по высоте всего 6 строк вместо 24. Синтаксис редактора vi таков:
где filename — имя файла, который надо редактировать.
Запустим редактор vi и создадим новый файл по имени test командой
На экране будет примерно следующая картинка:
обозначает пустые строки, иначе говоря, указывает, что мы находимся в конце файла. Символ _ обозначает курсор.
Ввод текста
Редактор vi сейчас находится в командном режиме. Нажмём клавишу i , и редактор перейдёт в режим ввода текста. Теперь вводим, например, следующий текст:
Введите любое количество строк, после каждой нажимая клавишу Enter . Исправлять опечатки можно с помощью клавиши Backspace. Для выхода из режима ввода и возвращения в командный режим нажмём клавишу Esc .
В командном режиме для движения по файлу можно использовать клавиши-стрелки. Если в файле всего одна строка, то при попытке нажать клавишу со стрелкой вверх либо вниз редактор, возможно, будет подавать звуковой сигнал.
Помимо команды i , есть ещё несколько способов вставить текст. Так, команда a начинает вставлять текст после текущего положения курсора, а не прямо в текущую. Например, приведём с помощью клавиш-стрелок курсор к пробелу, разделяющему слова good и men:
Нажмём теперь клавишу a (редактор перейдёт в режим ввода) и введём wo, после чего нажмём клавишу Esc и вернёмся в командный режим. На экране будет следующее:
Для того, чтобы начать вводить текст со следующей строки, используем команду o . Нажмём эту клавишу и введём одну-две строки текста:
Удаление текста
В командном режиме нажатие клавиши x удаляет символ, на который указывает курсор. Если нажать клавишу x пять раз, то на экране останется:
Теперь нажмём клавишу a и введём некоторый текст, после чего опять нажмём клавишу Esc :
Можно удалять целые строки командой dd (т. е. нажав клавишу d два раза подряд). Если курсор стоит на второй строке, и вы введёте команду dd , на экране останется следующее:
Для того, чтобы удалить слово, на которое показывает курсор, можно использовать команду dw . Подведите курсор к слову good и введите dw . Результат будет следующим:
Изменение текста
Отдельные части текста можно заменять на другие; для этого используется команда R . Подведите курсор к первому символу в слове meeting, нажмите клавишу R и введите слово session.
Действие команды R напоминает действие команд i и a , однако при команде R новый текст не вставляется, а стирает старый.
Команда r заменяет один символ, а именно тот, на который указывает курсор. Например, подведём курсор к началу слова Now, введём команду r и за ней букву C. На экране возникнет следующее:
С помощью команды
, то в конце концов возникнет:
Команды для движения курсора
Вы уже знаете, что передвигаться по экрану (и по документу) можно с помощью клавиш-стрелок. В дополнение можно для движения курсора использовать клавиши h , j , k и l . Они будут сдвигать курсор соответственно влево, вниз, вверх и вправо. Этими командами можно воспользоваться, если (по какой-нибудь причине) клавиши-стрелки действуют неправильно. Команда w перемещает курсор на начало следующего слова; команда b перемещает курсор на начало предыдущего слова.
Команда 0 (клавиша ноль) перемещает курсор на начало текущей строки, а команда $ перемещает курсор в её конец.
При редактировании больших файлов вам, возможно, захочется « перелистывать » целые экраны вперёд (т. е. вниз) и назад (вверх); для этого используются команды соответственно Ctrl — F и Ctrl — B .
Для того, чтобы переместить курсор в конец файла, используется команда G . Можно также поместить курсор на строку с данным номером; например, команда 10G поместит курсор на строку с номером 10. Для того, чтобы переместить курсор в начало файла, можно использовать команду 1G .
Команды движения курсора можно совмещать с другими командами, например, с командами удаления текста. Например, команда d$ удалит все, что находится между текущим положением курсора и концом строки; команда dG удалит все, что находится между текущим положением курсора и концом файла и т. д.
Сохранение изменений и выход из редактора vi
Для выхода из редактора vi без сохранения изменений, сделанных в файле, используется команда :q! . Когда вводится команда : , курсор переходит на последнюю строку экрана, и таким образом редактор оказывается в режиме последней строки:
В этом режиме возможно вводить некоторые расширенные команды. Одна из них — команда q! , которой завершается работа с редактором vi без сохранения сделанных изменений. Команда :wq сначала сохраняет файл со сделанными изменениями, а затем выходит из редактора vi . Команда ZZ (выданная в командном режиме, т. е. без введения команды : ) эквивалентна команде :wq . Если файл со времени последней модификации не изменялся, то время создания файла также не будет изменено. Напомним, что в режиме последней строки введение команды завершается клавишей Enter .
Чтобы сохранить файл, но не выходить из редактора vi , используется команда :w .
Переключение между файлами
Для того, чтобы приступить к редактированию другого файла, используется команда :e . Например, чтобы прекратить редактирование файла test и вместо этого начать редактирование файла foo, надо ввести команду
Если команда :e будет введена без предварительного сохранения файла на диск, будет выдано сообщение об ошибке:
Это сообщение означает, что после последней модификации не было сохранения файла, и редактор vi отказывается приступить к редактированию другого файла. Сейчас можно либо сохранить сделанные изменения командой :w и затем вводить команду :e , либо использовать команду
Символ ! в последней команде сообщает редактору, что вы действительно хотите приступить к редактированию другого файла, не сохраняя изменения в прежнем.
Вставка содержимого других файлов
Включить в текущий файл содержимое другого файла можно командой :r . Например, команда
вставит содержимое файла foo.txt в текст начиная с текущего положения курсора.
Запуск команд оболочки
Из редактора vi можно выполнять команды оболочки. Команда :r! работает аналогично команде :r , но вместо содержимого другого файла она вставляет в редактируемый файл выдачу некоторой команды. Например, введя команду
мы получим следующее:
Можно также « временно выйти » из редактора, запустить команду и затем вернуться обратно. Например, если будет введена команда
то команда ls -F будет исполнена, её результат будет выдан на экран, но выдача вставлена в файл не будет. Если используется команда
то редактор vi запускает сеанс (instance) командной оболочки, прерывая редактирование на время исполнения команд. Для выхода из оболочки и возвращения к редактированию надо ввести команду exit .
Помощь в работе с редактором vi
Как и в случае с любой программой в системе Linux в первую очередь следует обратиться к экранной документации к программе vi . Следует знать также, что редактор vi является пользовательским интерфейсом редактора ex , который выполняет многие из команд режима последней строки редактора vi . Поэтому, в дополнение к сказанному выше, можно также читать экранную документацию к редактору ex . Обычно (кроме режимов восстановления после системных сбоев) вам доступна более современная и улучшенная версия vi — vim , который имеет аналогичный vi интерфейс, поддерживает все команды vi и кроме того — массу дополнительных возможностей. Подробное руководство по vim можно получить, запустив этот редактор и отдав команду :help .
Как сохранить файл в Vim / Vi и выйти из редактора
Vim — это текстовый редактор, который предпочитают многие пользователи, которые проводят много времени в командной строке. В отличие от других редакторов, Vim имеет несколько режимов работы, которые могут немного напугать новых пользователей.
Vim или его предшественник Vi предустановлен на macOS и почти во всех дистрибутивах Linux. Знание основ Vim поможет вам, когда вы столкнетесь с ситуацией, когда ваш любимый редактор недоступен.
В этом руководстве объясняется, как сохранить файл в Vim / Vi и выйти из редактора.
Режимы Vim
Когда вы запускаете редактор Vim, вы находитесь в обычном режиме. В этом режиме вы можете использовать команды vim и перемещаться по файлу.
Чтобы ввести текст, вам необходимо войти в режим вставки, нажав клавишу i . Этот режим позволяет вставлять и удалять символы так же, как в обычном текстовом редакторе .
Чтобы вернуться в нормальный режим из любого другого режима, просто нажмите Esc .
Открыть файл в Vim / Vi
Чтобы открыть файл с помощью Vim, запустите терминал и введите vim а затем имя файла, который вы хотите отредактировать или создать:
Другой способ открыть файл — запустить редактор и ввести :e file_name , где file_name — это имя файла, который вы хотите открыть.
Сохраните файл в Vim / Vi
Команда для сохранения файла в Vim :w .
Чтобы сохранить файл без выхода из редактора, вернитесь в нормальный режим, нажав Esc , введите :w и нажмите Enter .
- Нажмите Esc
- Тип :w
- Нажмите Enter
Также существует команда обновления :up , которая записывает буфер в файл только при наличии несохраненных изменений.
Чтобы сохранить файл под другим именем, введите :w new_filename и нажмите Enter .
Сохраните файл и выйдите из Vim / Vi
Команда для сохранения файла в Vim и выхода из редактора :wq .
Чтобы сохранить файл и одновременно выйти из редактора, нажмите Esc чтобы переключиться в нормальный режим, введите :wq и нажмите Enter .
- Нажмите Esc
- Тип :wq
- Нажмите Enter
Другая команда для сохранения файла и выхода из Vim 😡 .
Разница между этими двумя командами заключается в том, что 😡 записывает буфер в файл, только если есть несохраненные изменения, тогда как :wq всегда записывает буфер в файл и обновляет время модификации файла.
Закройте Vim / Vi без сохранения файла
Чтобы выйти из редактора, не сохраняя изменений, переключитесь в нормальный режим, нажав Esc , введите :q! и нажмите Enter .
- Нажмите Esc
- Введите :q!
- Нажмите Enter
Выводы
В этом руководстве мы показали вам, как сохранить файл в Vim и выйти из редактора. Если вы новичок в Vim, посетите сайт Open Vim, где вы можете попрактиковаться в Vim с помощью интерактивного руководства.
Как выйти из файла в терминале Linux?
Нажмите клавишу [Esc] и введите Shift + ZZ для сохранения и выхода или нажмите Shift + ZQ для выхода без сохранения изменений, внесенных в файл.
Как выйти из терминала в Linux?
Чтобы закрыть окно терминала, вы можете использовать команду выхода. В качестве альтернативы вы можете использовать сочетание клавиш ctrl + shift + w, чтобы закрыть вкладку терминала, и ctrl + shift + q, чтобы закрыть весь терминал, включая все вкладки. Показать активность в этом сообщении. Вы можете использовать ярлык ^ D, то есть нажав Control и d.
Как закрыть и сохранить файл в терминале Linux?
Чтобы сохранить файл, вы должны сначала перейти в командный режим. Нажмите Esc, чтобы войти в командный режим, а затем введите: wq, чтобы записать и закрыть файл. Другой, более быстрый вариант — использовать сочетание клавиш ZZ для записи и выхода. Для не-vi, инициированного, запись означает сохранение, а выход — выход из vi.
Как выйти из редактора в терминале?
Чтобы выйти из редактора, не сохраняя изменений, переключитесь в нормальный режим, нажав Esc, введите: q! и нажмите Enter. Введите: q!
Как убить процесс в Linux?
- Какие процессы можно убить в Linux?
- Шаг 1. Просмотр запущенных процессов Linux.
- Шаг 2: Найдите процесс, который нужно убить. Найдите процесс с помощью команды ps. Нахождение PID с помощью pgrep или pidof.
- Шаг 3. Используйте параметры команды Kill для завершения процесса. killall Команда. Команда pkill. …
- Ключевые выводы о завершении процесса Linux.
Как выйти из программы в Linux?
если вы нажмете ctrl-z, а затем наберете exit, фоновые приложения закроются. Ctrl + Q — еще один хороший способ убить приложение. Если вы не контролируете свою оболочку, простое нажатие ctrl + C должно остановить процесс.
Как сохранить файл в Linux VI?
Как сохранить файл в Vi / Vim без выхода
- Переключитесь в командный режим, нажав клавишу ESC.
- Тип: (двоеточие). В левом нижнем углу окна откроется панель подсказок.
- Введите w после двоеточия и нажмите Enter. Это сохранит в Vim изменения, внесенные в файл, без выхода.
Как открыть файл в Linux?
Открыть файл в Linux
- Откройте файл с помощью команды cat.
- Откройте файл, используя команду less.
- Откройте файл с помощью команды more.
- Откройте файл с помощью команды nl.
- Откройте файл с помощью команды gnome-open.
- Откройте файл с помощью команды head.
- Откройте файл с помощью команды tail.
Как запустить файл в Linux?
Шаги по написанию и выполнению скрипта
- Откройте терминал. Перейдите в каталог, в котором вы хотите создать свой скрипт.
- Создайте файл с расширением. sh расширение.
- Запишите сценарий в файл с помощью редактора.
- Сделайте скрипт исполняемым с помощью команды chmod + x .
- Запустите скрипт с помощью ./ .
Как выйти из файла в командной строке?
Команду выхода также можно поместить в пакетный файл. В качестве альтернативы, если окно не полноэкранное, вы можете нажать кнопку закрытия X в правом верхнем углу окна. Вы также можете использовать сочетание клавиш Alt + F4, чтобы закрыть окно командной строки.
Как отредактировать файл в Терминале?
Снова откройте файл с помощью vi. а затем нажмите кнопку вставки, чтобы начать редактирование. он откроет текстовый редактор для редактирования вашего файла. Здесь вы можете редактировать свой файл в окне терминала.