Выход vi: Как выйти из редактора VI? – vi — Википедия

    Как выйти из редактора VI?

    Как выйти из Vi? Именно такой вопрос мне чаще всего задают пользователи, впервые запустившие этот замечательный редактор 🙂 Сразу ответ: Esc Esc ZQ или Esc Esc :qa! если ничего сохранять не нужно, Esc Esc ZZ или Esc Esc :w!q если содержимое надо сохранить. Два раза Esc в данном случае позволит вам выйти в нормальный режим из любого состояния редактора.

    Нет, редактор VI, а точнее VIM (Vi IMproved), и вправду замечательный, но уж очень необычный. В этой небольшой статье вы не найдете макросов, продвинутого редактирования, настройки и много чего другого. Здесь только самые полезные команды и основы редактора.

    Любой админ должен знать хотя бы основы работы в VIM, потому что в большинстве случаев  — это единственный доступный редактор в однопользовательском режиме на упавшей *nix системе. Более того он замечателен уже хотя бы тем, что он есть в установке по-умолчанию почти в любом *nix и, зачастую, используется как основной редактор. Например для правки passwd файла во FreeBSD используется команда vipw.

    Для того чтобы освоить VIM необходимо понять одну простую вещь: мышка, клавиши управления курсором — это зло, ухудшающее эффективность работы с редактором. Все операции с текстом в VIM можно (и нужно) выполнять на основном блоке клавиатуры.

    Редактор может находиться в трех режимах и изначально находится в так называемом «нормальном» режиме. В него же можно выйти из любого другого режима нажатием кнопки Esc.

    Из нормального режима, в котором производятся операции над текстом и перемещение, можно войти в режим «вставки», в котором и набирается собственно текст. Для этого есть следующие кнопки:

    i — вставить текст до курсора
    I — вставить текст с начала строки

    a — вставить текст после курсора
    A — вставить текст с конца строки
    o — вставить новую строку ниже
    O — вставить новую строку выше
    s — замена текущего символа и остаться в режиме вставки
    S — замена текущей строки
    r — Заменить текущий символ и вернуться в нормальный режим
    R — Заменить несколько последовательно расположенных символов

    Мощь VIM  в использовании модификаторов команды. Перед любой командой перемещения можно и, зачастую, нужно использовать мультипликатор. То есть 6w — это на 6 слов, а 77j — на 77 строк вниз.

    Нужно заметить, что модификаторы часто можно использовать и при других операциях, как например 5S — заменить 5 последующих строк.

    Перемещение по тексту.

    Если учесть, что стартовая позиция для правой руки — клавиши hjkl, то выбор клавиш становится вполне понятным:

    Управление текущей позицией

    h — влево (указательный палец сдвигается влево)
    j — вниз
    k — вверх.
    l — вправо.

    по строкам

    ^ или 0 — начало строки
    $ — конец строки
    w (word) — к началу следующего слова
    e (end) — к концу текущего слова
    b (begin) — к началу текущего слова и далее к предыдущим словам
    G (Go) — переход на строку (по умолчанию на последнюю)

    по экрану

    H (High) для перехода в верхнюю строку экрана
    M (Middle) для перехода в среднюю строку экрана
    L (Low) для прехода в нижнюю строку, показанная на экране

    по тексту

    { — предыдущий абзац
    } — следующий абзац
    ( — предыдущее предложение
    ) — следующее предложение
    ctrl-b (backward) перемещение на один экран назад
    ctrl-f (forward) перемещение на один экран вперед

    Закладки

    На любую строку можно поставить метку m[A-Z,a-z] и вернуться в любое время на неё ‘[A-Z,a-z] (то есть одинарная кавычка и название метки).

    Операции над текстом

    ~ — Смениить регистр текущего символа (или стольких, сколько указано в мультипликаторе)
    d — Удалить + мультипликатор, например: d$ — всё до конца строки, d8w — 8 слов, d3h — 3 символа вправо, d1G — всё к началу текста.
    dd — удалить строку (55dd — 55 строк)
    Если быть точнее, то операции удаления — это вырезание текста в буфер, то есть его можно потом вставить.

    y (yank) — копировать в буфер (y5w — копировать 5 слов)
    yy — копировать в буфер строку (2yy — 2 строки)
    p (paste) — вставить из буфера (2p — вставить 2 раза)

    Визуальный режим выделения текста

    v (visual) — посимвольный режим выделения
    V — построчный режим выделения
    Ctrl-V — прямоугольный блок текста
    Над выделенным фрагментом можно производить все обычные действия.

    Undo и redo

    u (undo) — Отменить последнее изменение (7u — 7 изменений)
    ctrl-r (redo) — Повторить изменение
    :earlier 40m — вернуть текст таким, как он был 40 минут назад
    :later 20s — передвинуться вперед на 20 секунд по временной шкале изменения текста
    :undolist — список правок

    Выход, запись изменений

    Возвращаясь к теме статьи:
    :w (write) запись файла на диск
    :q (quit) выход из редактора, если изменения не нужно сохранять, то добавьте !

    vi — Википедия

    Материал из Википедии — свободной энциклопедии

    vi (от англ. visual) — серия текстовых редакторов операционных систем семейства UNIX.

    Первая версия была написана Биллом Джоем в 1976 году.

    В то время наиболее распространённым был редактор ed. Поскольку он был довольно сложным для «простого смертного», George Coulouris разработал редактор em (editor for mortals — редактор для смертных). Билл Джой модифицировал редактор em и назвал его en, а позже на его основе создал ex, в котором появился визуальный режим, вызывавшийся командой vi. Так как пользователи больше времени проводили в визуальном режиме, ex 2.0, ставший частью 2BSD, сразу запускался уже в нём. Так появился vi, бывший в то время всего лишь жёсткой ссылкой на ex[3].

    Редактор писался для терминала ADM-3A, имевшего ограниченную клавиатуру: на ней не было выделенных клавиш-стрелок, а из модификаторов доступны только ⇧ Shift и частично Ctrl[прим 1]. Эти обстоятельства повлияли на выбор используемых в редакторе клавиш.

    В отличие от многих привычных редакторов, vi имеет модальный интерфейс. Это означает, что одни и те же клавиши в разных режимах работы выполняют разные действия. В редакторе vi есть два основных режима: командный режим и режим вставки. По умолчанию работа начинается в командном режиме.

    В режиме вставки клавиатура используется для набора текста. Для выхода в командный режим используется клавиша Esc или комбинация Ctrl+c.

    В командном режиме алфавитные клавиши соответствуют командам перемещения и изменения текста. Так, команды h, j, k, l перемещают курсор на одну позицию влево, вниз, вверх, вправо соответственно, команда

    x удаляет один символ и т. д. Это позволяет работать без необходимости использования дополнительной клавиатуры и клавиш-модификаторов, таких, как Ctrl, Alt и т. д. Более сложные операции редактирования получаются комбинацией простых, например, 2dw удаляет два слова. Для полнотекстовых операций имеется возможность задавать команды ex в подобии командной строки, например, :1,.s/wiki/[[wiki]]/g заключит все вхождения последовательности символов wiki от начала текста до текущей позиции в двойные квадратные скобки.

    Часто используемые команды[править | править код]

    • /str — Поиск строки str вперед. str может быть регулярным выражением
    • ?str — Поиск строки str назад
    • n — Повторить поиск в том же направлении
    • N — Повторить поиск в обратном направлении
    • :[range]s/old/new/[g] — Заменить old на new в указанном диапазоне строк range. new и old могут быть регулярными выражениями, а range задается аналогично диапазону строк в редакторе ed. Например, для диапазона строк с 32 по 64 range будет 32,64, первая строка соответствует 1, последняя задается через символ $. Суффикс g означает заменить все вхождения old в строке, а не только первое.
    • :e! — перезагрузить текущий файл
    • :33 — переместиться на 33-ю строку текстового файла
    • i — перейти в режим редактирования
    • a — перейти в режим редактирования после текущего символа
    • u — отменить последнее действие
    • . — повторить последнее действие
    • x — вырезать символ под курсором
    • yy — копировать строку
    • dd — вырезать строку
    • p — вставить
    • J — склеить две строки
    • :w — сохранить файл на диске
    • :wq — выход с сохранением файла
    • ZZ — выход с сохранением файла
    • :q — выход
    • :q! — выход без сохранения файла
    • ZQ
       — выход без сохранения файла
    • :r — вставить в документ другой файл

    Чтобы получить подробную помощь по редактору vi, выполните команду man vi в Unix shell (q — выход из справки).

    Спор между сторонниками vi и emacs является классическим примером «религиозных войн».

    Существуют клоны редактора vi с расширенной функциональностью:

    • Vim
    • elvis
    • vile (англ.)
    • nvi (англ.) — реимплементация vi под свободной лицензией BSD
    • viper — плагин для Emacs, эмулирующий команды vi
    1. ↑ Точнее, Vi не опрашивает клавиатуру напрямую, а получает от терминала код ASCII для нажатой клавиши или их сочетания. Следовательно, клавиша Ctrl может использоваться не со всеми клавишами, а только с теми, при нажатии которых совместно с Ctrl вводятся управляющие символы ASCII.
    ⛭

    Команды Unix

    Как сохранить файл в Vim/Vi и выйти из редактора

    Vim является предпочтительным текстовым редактором для многих пользователей, которые проводят много времени в командной строке. В отличие от других редакторов, Vim имеет несколько режимов работы, которые могут быть немного пугающими для новых пользователей.

    Vim или его предшественник Vi предустановлен на MacOS и почти во всех дистрибутивах Linux. Знание основ Vim поможет вам, если вы столкнетесь с ситуацией, когда ваш любимый редактор недоступен.

    В этой статье мы объясним, как сохранить файл в Vim/Vi и выйти из редактора.

     

    Когда вы запускаете редактор Vim, вы находитесь в командном режиме. В этом режиме вы можете использовать команды vim и перемещаться по файлу.

    Чтобы иметь возможность печатать текст, вам нужно войти в режим вставки, нажав клавишу i. Этот режим позволяет вставлять и удалять символы так же, как в обычном текстовом редакторе.

    Чтобы вернуться в командный режим из любого другого режима, просто нажмите клавишу Esc.

     

    Чтобы открыть файл с помощью Vim, наберите vim за которым следует имя файла, который вы хотите отредактировать или создать:

    vim file.text

    Другой способ открыть файл – это запустить редактор и набрать :e file_name, где file_name имя файла, который вы хотите открыть.

    Команда для сохранения файла в Vim есть :w.

    Чтобы сохранить файл без выхода из редактора, вернитесь в командный режим, нажав Esc, введите :w и нажмите Enter.

    1. Нажмите Esc
    2. Тип :w
    3. Нажмите Enter

    Существует также команда обновления, :upкоторая записывает буфер в файл, только если есть несохраненные изменения.

    Чтобы сохранить файл под другим именем, используйте :w filewname и нажмите Enter.

     

    Команда сохранить файл в Vim и выйти из редактора :wq.

    Чтобы сохранить файл и выйти из редактора одновременно, нажмите, Esc чтобы переключиться в командный режим, введите :wq и нажмите Enter.

    1. Нажмите Esc
    2. Тип :wq
    3. Нажмите Enter

    Другая команда для сохранения файла и выхода из Vim – 😡 это запись буфера в файл, только если есть несохраненные изменения.

     

    Чтобы выйти из редактора, не сохраняя изменения, переключитесь в командный режим, нажав Esc, введите :q! и нажмите Enter.

    1. Нажмите Esc
    2. Тип :q!
    3. Нажмите Enter

     

    В этой статье мы показали, как сохранить файл в Vim и выйти из редактора.

    Не стесняйтесь оставлять комментарии, если у вас есть какие-либо вопросы.

    Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

    Описание Редактора VI

    Описание.

    Редактор vi — один из первых редакторов, разработанных для операционных систем UNIX. Он и по сей день остается одним из самых мощных редакторов и стандартно поставляется практически с каждой операционной системой типа UNIX. В нем отсутствует меню, и все действия осуществляются с помощью клавиш и клавиатурных комбинаций.

    Редактор vi работает в двух режимах —

    командном

    и

    набора текстов

    . Сразу после запуска vi находится в командном режиме. В этом режиме нажатия клавиш интерпретируются как команды редактору, а не как текст, вводимый в документ.

    Чтобы переключиться в режим ввода текста, необходимо нажать одну из клавиш:

    a, i

    или

    o

    .

    Клавиша

    a

    означает

    append

    (присоединить). В этом режиме вводимый текст вставляется после символа, на котором находится курсор.

    Клавиша

    i

    означает

    insert

    (вставить). В этом режиме вводимый текст вставляется перед символом, на котором находится курсор.

    И, наконец, клавиша

    o

    означает

    open

    (открыть). Это приводит к тому, что после строки, на которой находится курсор, в текст вставляется новая строка. Затем курсор перемещается на новую строку, и редактор переходит в режим insert, разрешая ввод текста на новой строке.

    Имеется также несколько других команд для установки режима ввода текста, которые применяются не так часто. Это команда

    O

    , которая

    добавляет пустую строку над текущей строкой

    ; и команда

    A

    , которая

    начинает вставлять текст в конце текущей строки

    .

    Из режима ввода текста в командный режим можно вернуться нажатием клавиши

    Esc

    . При переходе в командный режим редактор vi по умолчанию выдает звуковой сигнал.

    Перемещение по тексту в редакторе vi.

    Перемещаться по тексту в режиме ввода текста можно, как правило, с помощью курсорных клавиш, или клавиш

    Page Up / Page Down

    . Однако на терминале это не всегда функционирует. Кроме того, на некоторых терминалах эти клавиши могут отсутствовать. На этот случай имеются другие клавиши, позволяющие перемещаться по документу в командном режиме.

    Чтобы воспользоваться этими клавишами перемещения, нажмите клавишу Escape для перехода в командный режим. В этом режиме можно пользоваться клавишами

    h, j, k

    и

    l

    для перемещения курсора влево, вниз, вверх и вправо. Вот несколько советов, которые помогут запомнить их назначение:

    l — крайняя справа и поэтому перемещает курсор вправо.

    h — крайняя слева и перемещает курсор влево

    j — немного похожа на стрелку, направленную вниз. Соответственно, она перемещает курсор вниз

    k — перемещает курсор вверх.

    В командном режиме имеется еще несколько клавиш перемещения. В таблице приведены различные клавиши и их функции.

    Обратите внимание, что с каждой командой этой таблицы по умолчанию используется число 1. Клавиша j перемещает вниз на 1 строку, клавиша k перемещает его вверх на 1 строку, и так далее. Все эти команды можно модифицировать, вводя перед ними число. Так, следующая команда перемещает вниз не на одну строку, а на пять: 5j

    Следующая команда перемещает курсор на 75-ю строку файла, редактируемого в данный момент:75G

    А вот команда, которая перемещает курсор на пятую снизу строку экрана:5L

    Данный синтаксис справедлив для всех команд из таблицы, за исключением команды

    ~~

    ,

    которая перемещает курсор к первому символу документа, не являющегося пробелом.

    Прочие клавиши перемещения.

    Помимо описанных выше клавиш перемещения курсора, имеется еще несколько клавиатурных комбинаций, выполняющих прокрутку текста на экране (см. ниже):

    Команды редактирования текста.

    В редакторе vi клавиши

    Backspace

    и

    Delete

    не выполняют тех действий, которых от них можно ожидать. Для удаления текста и тому подобного придется воспользоваться различными клавишами в командном режиме редактора.

    Операции над файлами и выход из редактора vi

    Это операции загрузки и сохранения файлов в редакторе vi.

    :w

    —  записать изменения в файл.

    :e

    — загрузить файл для редактирования.

    :q

    — выход из VI .

    :wq

    — сохранить файл и выйти.

    :q!

    —  выйти из редактора без сохранения.

    Поиск в тексте и замена текста в редакторе vi.

    /

    начало шаблона прямого поиска в командном режиме. Например /ufs <ENTER>.

    ?

    — начало шаблона обратного поиска в командном режиме.

    dd

    — удаление строки.

    yy

    — копирование текста во внутренний буфер.

    p

    — вставка текста из буфера.

    Копирование, вырезание и вставка текста в редакторе vi:

    Текст из буфера можно вставить на любое место документа, перемещая на требуемое место курсор и применяя команду р или Р. Команда

    р

    вставляет текст в документ после курсора. Команда

    Р

    вставляет текст перед курсором. Текст продолжает оставаться в буфере и после того, как вы вставите его в документ. Поэтому можно снова использовать эти команды для вставки текста в документ в других местах.

    Предостережение

    Редактор vi хранит в буфере текст только самой последней операции копирования текста в буфер или удаления. Другими словами, если Вы выполнили команду dd, чтобы удалить строку текста, а потом выполнили команду yy, чтобы скопировать строку текста, то в буфере текст, с которым оперировала команда dd, будет замещен текстом операции yy. Это означает, что текст из операции dd будет потерян, т.е. операцию удаления отменить будет невозможно.

    Как выйти из Vim | Losst

    Как выйти из Vim? Как закрыть Vim? Как сохранить и выйти Vim? Подобные вопросы задают множество новичков, которые только начинают пользоваться редактором Vim. Это один из лучших редакторов, работающих в терминале. Он известен благодаря своей огромной функциональности.

    Но новым пользователям очень неудобно пользоваться редактором из-за непривычных сочетаний клавиш. В этой статье мы рассмотрим несколько способов как выйти из Vim. А также несколько интересных фактов о выходе из Vim.

    Содержание статьи:

    Как выйти из Vim

    Если вы уже интересовались статьями о Vim, то, наверное, знаете, что существует несколько способов закрыть Vim. Вот самые популярные из них:

    Нажмите клавишу Esc, это важно, потому что вам необходимо выйти из режима вставки, прежде чем вводить команды выхода. Далее можете вести одну из следующих команд:

    • :q — двоеточие — это тоже часть команды, она просто закроет редактор;
    • :q — если файл не был сохранен, то с помощью этой команды вы можете выйти без сохранения;
    • :wq — позволяет сохранить и выйти Vim.

    После ввода любой из команд нужно нажать Enter. Обратите внимание, что при нажатии Esc и ввода символа «:» курсор ввода переместится вниз окна.

    Другие способы выйти из Vim

    Как правило, вам будет достаточно помнить три приведенные выше команды чтобы правильно выйти из Vim в большинстве ситуаций. Но существует еще несколько способов:

    • Esc + 😡 — сохранить и выйти;
    • Esc + :qa — закрыть все открытые файлы;
    • Esc + Shift ZZ — сохранить и выйти Vim;
    • Esc + Shift ZQ — выйти без сохранения Vim.

    Этого будет полностью достаточно чтобы выбрать именно то, что нужно и более удобно. Для меня проще всего первый способ. Также, возможно, вам понравиться сочетание :wq. Для сохранения используется команда :w, поэтому Write — сохранить, а Quit — выйти. Очень просто запомнить.

    Факты о выходе из Vim

    Если вы чувствуете себя неловко, потому что не знаете как выйти из Vim, не расстраивайтесь. Вы не одиноки, согласно статистике StackOverflov более миллиона разработчиков со всего мира не знают как выйти из редактора vim.

    В самом деле, выход из Vim стал темой для анекдотов и частью культуры. Например, один из популярных твитов, который акцентирует внимание на сложности выхода из Vim:

    Это немного удивительно, потому что если вы запустите Vim без параметров, то увидите информацию о том, как его закрыть прямо на заставке:

    Но здесь такая очевидная вещь, как выход, делается не очевидным способом. Забавно, что мы привыкли к стандартным сочетаниям клавиш — Ctrl+S и Ctrl+X и теряемся, когда не находим их в программах.

    Выводы

    Vim — это лучший текстовый редактор. Если вы разберетесь со всеми его функциями, то уже не сможете найти ему замену. Системные администраторы тратят очень много времени на работу в командной строке, овладение Vim будет очень полезно для них. Надеюсь, информация из этой статьи была полезной для вас.

    Источник: itsfoss.com

    Оцените статью:

    Загрузка…

    Редактирование текста в Linux с помощью команд Vi, cat, less

    Vi — очень мощный инструмент. В статье сделан упор не на возможностях редактора, а научить его основам.

    Редактор командной строки

    Vi — текстовый редактор командной строки. Командная строка — это совершенно другая среда для вашего графического интерфейса. Это одно окно с вводом и выводом текста. Vi был спроектирован для работы с этими ограничениями и в результате он достаточно мощный. Vi предназначен для работы в качестве простого текстового редактора. Однако он обладает гораздо большей мощностью по сравнению с Notepad или Textedit.

    В итоге, вы должны забыть про мышь. Все в Vi делается через клавиатуру.

    В Vi есть два режима. Режим вставки и режим редактирования. В режиме ввода вы можете вводить содержимое в файл. В режиме редактирования вы можете перемещаться по файлу, выполняя следующие действия:

    • удаление
    • копирование
    • поиск
    • замена
    • сохранение
    • другие

    Перечислим основные распространенные ошибки. Во-первых, начинать вводить команды, не возвращаясь в режим редактирования. Во — вторых, вводить ввод без предварительной вставки.

    Когда мы запускаем vi, мы обычно выдаем его с одним аргументом командной строки. Он же является файлом для редактирования.

    vi <файл>

    Если вы забыли указать файл, есть способ открыть его в vi. Когда мы указываем файл, он может иметь абсолютный или относительный путь.

    Пример

    Отредактируем наш первый файл.

    vi <файл>. Отредактируем наш первый файл

    Когда вы запускаете эту команду, она открывает файл. Если файл не существует, он создаст его для вас, а затем откройте его. После ввода vi это будет выглядеть примерно так.

    vi <файл>. Вы всегда начинаете в режиме редактирования

    Вы всегда начинаете в режиме редактирования, поэтому первое, что мы собираемся сделать, это переключиться в режим вставки, нажав i

    vi <файл>. Вы всегда начинаете в режиме редактирования

    Теперь введите несколько строк текста и нажмите клавишу Esc, и вы вернетесь в режим редактирования.

    Сохранение и выход

    Есть несколько способов сделать данный маневр. Для начала убедитесь, что вы находитесь в режиме редактирования.

    Если вы не уверены, находитесь ли вы в режиме редактирования можно посмотреть в нижнем левом углу. В качестве альтернативы вы можете просто нажать Esc, чтобы быть уверенным. Если вы уже находитесь в режиме редактирования, нажатие клавиши « Esc» ничего не делает, поэтому вы не причините вреда.

    • ZZ — Сохранить и выйти
    • :q! — отменить все изменения, начиная с последнего сохранения, и выйти
    • : w — сохранить файл, но не выходить
    • : wq — снова сохранить и выйти

    Большинство команд в vi выполняются, как только вы нажимаете последовательность клавиш. Любая команда, начинающаяся с двоеточия (:), требует, чтобы вы нажали <enter> для завершения команды.

    Другие способы просмотра файлов

    vi позволяет нам редактировать файлы. Кроме того, мы можем использовать его для просмотра файлов. Надо признать, есть две другие команды, которые немного более удобны для этой цели. Во-первых, cat, который на самом деле означает конкатенацию. Ее основная цель — объединить файлы, но в своей основной форме это полезно для просмотра файлов.

    cat <файл>

    Запустив команду cat с одним аргументом командной строки, можно увидеть содержимое файла на экране, а затем появится подсказка.

    Если вы случайно запустили cat без указания аргумента командной строки, вы заметите, что курсор перемещается на следующую строку, а затем ничего не происходит. Если вы наберете что-то, нажмите <enter>, вы увидите cat зеркально отразит ваш ввод на экране. Чтобы выйти отсюда, следует нажать <Ctrl> + c, который является универсальным сигналом для отмены в Linux.

    На самом деле, когда у вас возникают проблемы, вы обычно можете нажать <Ctrl> + c, чтобы избежать неприятностей.

    cat <файл>. Другие способы просмотра файлов

    Эта команда хороша, когда у нас есть маленький файл для просмотра.

    А если файл большой? Основная часть контента будет летать по экрану, и мы увидим только последнюю страницу контента. Для больших файлов лучше подходит команда, less.

    less <файл>

    less позволяет перемещаться вверх и вниз по файлу с помощью клавиш со стрелками. Вы можете перейти вперед на целую страницу с помощью пробела или назад на страницу, нажав b. При завершении, следует нажать q для выхода.

    Навигация по файлу в Vi

    Теперь вернемся к файлу, который мы только что создали, и введем еще немного контента. В режиме вставки вы можете использовать клавиши со стрелками для перемещения курсора. Введите еще два абзаца содержания, затем нажмите Esc, чтобы вернуться в режим редактирования.

    Ниже приведены некоторые из множества команд, которые вы можете вводить для перемещения по файлу. Посмотрите как они работают.

    • Клавиши со стрелками — перемещать курсор
    • j, k, h, l — переместить курсор вниз, вверх, влево и вправо (аналогично клавишам со стрелками)
    • ^ — переместить курсор в начало текущей строки
    • $ — переместить курсор в конец текущей строки
    • nG — перейти к n- й строке (например, 5G — к 5-й строке)
    • G — перейти к последней строке
    • w — перейти к началу следующего слова
    • nw — переместиться вперед
    • b — перейти к началу предыдущего слова
    • nb — вернуться на n слово
    • { — переместиться назад на один абзац
    • } — перейти на один абзац вперед

    Набрав set nu в режиме редактирования в vi, позволяет включить номера строк. В итоге, включение номеров строк делает работу с файлами намного проще.

    Удаление текста

    Если мы хотим перейти в vi, у нас будет довольно много вариантов. Некоторые из них также позволяют нам предшествовать им с числом, которое можно перемещать столько раз. Удаление работает аналогично перемещению. Всего несколько команд удаления позволяют нам включить команду перемещения, чтобы определить, что будет удалено.

    Вот некоторые способы, которыми мы можем удалять текст в vi.

    • x — удалить один символ
    • nx — удалить n символов (например, 5x удаляет пять символов)
    • dd — удалить текущую строку
    • dn — d, сопровождаемый командой движения.

    Отмена

    Отменить изменения в vi довольно легко. Это символ u .

    • u — отменить последнее действие (вы можете продолжать нажимать u, чтобы продолжить отмену)
    • U (Заглавная) — отменить все изменения в текущей строке

    Вывод

    Теперь вы можете сделать основное редактирование в vi.

    • скопировать и вставить
    • поиск и замена
    • буферы
    • маркеры
    • диапазоны
    • настройки

    Кроме того, в статье мы ознакомились со следующими командами:

    • VI — редактировать файл
    • cat — просмотр файла.
    • less — удобство для просмотра больших файлов.

     

    Как выйти из редактора Vim?

    Я застрял и не могу сбежать. Там написано::

    "type :quit<Enter> to quit VIM"
    

    Но когда я печатаю, что это просто появляется в теле объекта.

    vim vi Поделиться Источник jclancy     06 августа 2012 в 12:25

    12 Ответов



    4442

    Нажмите клавишу Esc , чтобы ввести «Normal mode». Затем вы можете ввести : , чтобы ввести «Command-line mode». В нижней части экрана появится двоеточие ( :), и вы можете ввести одну из следующих команд. Чтобы выполнить команду, нажмите клавишу Enter .

    • :q to quit (сокращение от :quit )
    • :q! чтобы выйти без сохранения (сокращение от :quit! )
    • :wq чтобы написать и уйти
    • :wq! для записи и выхода, даже если файл имеет только разрешение на чтение (если файл не имеет разрешения на запись: принудительная запись)
    • :x для записи и выхода (аналогично :wq , но только при наличии изменений)
    • :exit для записи и выхода (то же, что и :x )
    • :qa чтобы бросить все (сокращение от :quitall )
    • :cq выйти без сохранения и сделать Vim возвращающим ненулевую ошибку (т. е. выйти с ошибкой)

    Вы также можете выйти из Vim непосредственно из «Normal mode», набрав ZZ , чтобы сохранить и выйти (то же самое, что и :x ) или ZQ , чтобы просто выйти (то же, что и :q! ). (Обратите внимание, что здесь важен случай. ZZ и zz не означают одно и то же.)

    Vim имеет обширную справку — которую вы можете получить с помощью команды :help — где вы можете найти ответы на все ваши вопросы и учебник для начинающих.

    Поделиться dirvine     06 августа 2012 в 12:46



    157

    Перед вводом команды нажмите клавишу Esc . После того, как вы введете его, нажмите Return для подтверждения.

    Esc завершает текущую команду и переключает Vim в нормальный режим . Теперь, если вы нажмете :, то : появится в нижней части экрана. Это подтверждает, что вы действительно вводите команду, а не редактируете файл.

    Большинство команд имеют сокращения, причем необязательная часть заключена в скобки: c[ommand] .

    Команды, отмеченные знаком»*», являются Vim-только (не реализованы в Vi).

    Безопасный-выход (не выполняется, если есть несохраненные изменения):

    • :q[uit] закройте текущее окно . Закройте Vim, если это последнее окно. Это не удается, когда изменения были сделаны в текущем буфере .
    • :qa[ll] * закройте все windows и Vim, если только не было изменено несколько буферов.

    Prompt-quit (запрашивает, если есть несохраненные изменения)

    • :conf[irm] q[uit] * выходите, но дайте подсказку, когда есть некоторые буферы, которые были изменены.
    • :conf[irm] xa[ll] * записать все измененные буферы и выйти из Vim. Вызовите запрос, когда некоторые буферы не могут быть записаны.

    Запись (сохранение) изменений и выход из системы:

    • :wq напишите текущий файл (даже если он не был изменен) и закройте его. Запись завершается ошибкой, если файл доступен только для чтения или у буфера нет имени. :wqa[ll] * для всех windows.
    • :wq! то же самое, но записывает даже файлы только для чтения. :wqa[ll]! * для всех windows.
    • :x[it] , ZZ (с подробностями). Запишите файл только в том случае, если он был изменен и вышел, :xa[ll] * для всех windows.

    Отменить изменения и выйти из игры:

    • :q[uit]! ZQ * выход без записи, также когда видимые буферы имеют изменения. Не выходит, когда есть измененные скрытые буферы.
    • :qa[ll]! *, :quita[ll][!] * Quit Vim, все изменения в буферах (включая скрытые) теряются.

    Пресс- Return , чтобы подтвердить выполнение команды.

    Этот ответ не ссылается на все команды и аргументы Vim write and quit. Действительно, они упоминаются в документации Vim .

    Vim имеет обширную встроенную справку, введите Esc :help Return , чтобы открыть ее.

    Этот ответ был вдохновлен другим, первоначально написанным @dirvine и отредактированным другими пользователями SO. Я включил дополнительную информацию из Vim ссылок, SO комментариев и некоторых других источников. Различия для Vi и Vim также отражены.

    Поделиться Nick Volynkin     08 июня 2015 в 13:34



    137

    Картинки стоят тысячи Unix команд и опций:

    Enter image description here

    Я рисую это своим студентам каждый семестр, и они, кажется, понимают vi позже.

    vi-это конечная машина с тремя состояниями.

    При запуске vi переходит в режим COMMAND, где вы можете вводить короткие, несколько символьных команд вслепую . Вы знаете, что делаете; это не для любителей.

    Если вы действительно хотите редактировать текст, вы должны перейти в режим INSERT с помощью какой-то односимвольной команды:

    • i: перейти к INSERT на месте курсора
    • I: перейти в режим INSERT в начале строки
    • a: добавить после курсора
    • Ответ: дописать в конец строки
    • o: откройте новую строку ниже текущей строки
    • O: откройте новую строку на месте текущей строки

    Теперь, отвечая на вопрос: выходим.

    Вы можете выйти из режима vi из режима EX:

    • вопрос: если вы не внесли никаких изменений или сохранили их заранее
    • вопрос!: игнорирует любые изменения и выходит из игры
    • ВК: сохранить и выйти
    • x: это равно wq

    w и x принимают параметр имени файла. Если вы запустили vi с именем файла, вам не нужно давать его здесь снова.

    Наконец, самое главное: как вы можете достичь режима EX?

    Режим EX предназначен для длинных команд, которые вы можете увидеть набрав в нижней строке экрана. Из режима COMMAND вы нажимаете двоеточие, :, и двоеточие появится в нижней строке, где вы можете ввести указанные выше команды.

    Из режима INSERT вам нужно нажать ESC, то есть кнопку Escape, перейдя в режим COMMAND, а затем : перейти в режим EX.

    Если вы не уверены, нажмите ESC, и это приведет вас в командный режим.

    Таким образом, надежный метод ESC-:-x-Enter, который сохраняет ваш файл и завершает работу.

    Поделиться Gergely     26 мая 2017 в 12:24



    71

    Если вы хотите выйти без сохранения в Vim и иметь Vim возвращающий ненулевой код выхода, вы можете использовать :cq .

    Я использую это все время, потому что я не могу побеспокоиться о том, чтобы пинки сдвинулся для ! . Я часто передаю вещи в Vim, которые не нужно сохранять в файле. У нас также есть нечетная оболочка SVN в работе, которая должна быть выведена с ненулевым значением, чтобы прервать проверку.

    Поделиться Sue Spence     28 января 2014 в 10:59



    40

    Это наихудший сценарий выхода из Vim, если вы просто хотите выйти, понятия не имеете, что вы сделали, и вам все равно, что произойдет с файлами, которые вы открыли.

    Ctrl-c Enter Enter vi Enter Ctrl-\ Ctrl-n :qa! Enter

    Это должно помочь вам выбраться большую часть времени.

    Несколько интересных случаев, когда вам нужно что-то вроде этого:

    • i Ctrl-o vg (вы входите в режим вставки, затем в визуальный режим, а затем в режим ожидания оператора)

    • Qappend Enter

    • iCtrl-o gQ Ctrl-r = Ctrl-k (спасибо porges за этот случай)

    • :set insertmode (это тот случай, когда Ctrl-\ Ctrl-n возвращает вас в нормальный режим)


    Edit: этот ответ был исправлен из-за приведенных выше случаев. Это используется, чтобы быть:

    Esc Esc Esc :qa! Enter

    Однако это не работает, если вы вошли в режим Ex. В этом случае вам нужно будет сделать:

    vi Enter :qa! Enter

    Поэтому полная команда для «Я не хочу знать, что я сделал, и я не хочу ничего спасать, я просто хочу выйти сейчас!» должен быть

    vi Enter Esc Esc Esc :qa! введите

    Поделиться Heikki Naski     24 июня 2015 в 13:38



    36

    В случае, если вам нужно выйти из Vim в легком режиме (при использовании опции -y ), вы можете войти в нормальный режим Vim, нажав кнопку Ctrl + L , и тогда любой из нормальных вариантов выхода будет работать.

    Поделиться wsams     18 июля 2014 в 13:48



    27

    Vim имеет три режима работы:режим ввода, командный режим & Ex mode.

    Режим ввода -все, что вы набираете, все нажатия клавиш отражаются на экране.

    Командный режим или режим экранирования — все, что вы вводите в этом режиме, интерпретируется как команда.

    Ex mode -это еще один редактор, ex. Это линейный редактор. Он работает на линию или на основе диапазона линий. В этом режиме внизу экрана появляется символ : . Это бывший редактор.

    Чтобы выйти из Vim, вы можете выйти, находясь либо в режиме ex, либо в командном режиме. Вы не можете выйти из Vim, когда находитесь в режиме ввода.

    Выход из режима

    1. Вы должны быть уверены, что находитесь в командном режиме. Для этого просто нажмите клавишу Esc .

    2. Перейдите в режим ex, нажав клавишу :

    3. Для выхода из режима ex используйте любую из следующих комбинаций:

      :q -выход :q! -выход без сохранения :wq — сохранить & бросить или оставить & бросить :wq! -то же самое, что и wq, но принудительная запись в случае, если разрешения файла доступны только для чтения :x -написать & выйти :qa -бросить все. полезно при открытии нескольких файлов, например: vim abc.txt xyz.txt

    Выход из командного режима

    1. Нажмите клавишу escape. Вы, вероятно, уже сделали это, если находитесь в командном режиме.

    2. Пресс-капитал ZZ ( shift zz ) — сохранить выход &

    3. Нажмите capital ZQ (shift zq ) — выход без сохранения.

    Поделиться tovishalck     24 мая 2017 в 02:46



    25

    После нажатия кнопки ESC (или cmd + C на моем компьютере) необходимо нажать кнопку : , чтобы появилась командная строка. Затем вы можете ввести quit .

    Вы можете обнаружить, что машина не позволит вам выйти, потому что ваша информация не была сохранена. Если вы все равно хотите выйти, введите ! сразу после выхода (т. е. :quit! ).

    Поделиться deleteMe     28 ноября 2014 в 15:25



    18

    На самом деле это невероятно легко бросить vim .

    Нажмите Escape, дважды повернитесь, пните кошку, сделайте идеальную чашку чая, пробежите милю за четыре минуты, поднимитесь на Эверест, заставьте Кессель пробежать менее 12 парсеков, спасите Кобаяши Мару, претендуйте на железный трон, достигните мира во всем мире, нажмите :q Enter

    Поделиться Caltor     26 октября 2018 в 11:10



    16

    Я получил Vim, установив Git клиент на Windows. :q не выйдет из Vim для меня. :exit тем не менее сделал это…

    Поделиться Bjørn van Dommelen     05 февраля 2015 в 11:30



    5

    Я бы хотел добавить к этому свои два цента . Этот вопрос был задан здесь .

    Команда q с номером закрывает данное разделение в этой позиции.

    :q<split position> или :<split position>q закроют раскол в этой позиции.

    Допустим, ваш макет окна Vim выглядит следующим образом:

    -------------------------------------------------
    |               |               |               |
    -------------------------------------------------
    |               |               |               |
    |               |               |               |
    |    Split 1    |    Split 2    |     Split 3   |
    |               |               |               |
    -------------------------------------------------
    

    Если вы запустите команду q1 , она закроет первое разделение. q2 закроет второй раскол и наоборот.

    Порядок разделения позиций в команде quit не имеет значения. :2q или :q2 закроют второй раскол.

    Если позиция разделения, которую вы передаете команде, больше, чем число текущих разделений, она просто закроет последнее разделение.

    Например, если вы запустите q100 в приведенном выше окне Настройки, где есть только три разделения, он закроет последнее разделение (Split 3).

    Поделиться Subash     12 февраля 2018 в 23:41



    5

    Вот как вы можете выйти из Vim. Нажмите Ctrl & ‘Z’, затем ‘X’ и ‘C’.

    Ctrl -> +Z -> +X -> +C
    

    Поделиться Alimov Shohrukh     31 мая 2018 в 06:46


    Похожие вопросы:


    Изменение практики выхода и открытия редактора vi (vim)?

    Одним из основных различий между vi (vim) и emacs, является emacs предназначен и должен выполняться время от времени без выхода, где, учитывая быстрое время загрузки vim, легче выйти и начать Для…


    Как заставить groovysh использовать vim в качестве многострочного редактора на linux-box

    rlwrap не дает льгот для старого редактора времени. Но установить groovysh использовать vim/vi в качестве редактора при работе с интерактивной консолью, похоже, непросто. Например, при использовании…


    Выход из режима вставки vim в Редакторе стилей Mozilla Firefox

    Внутри редактора стилей для Mozilla Firefox web dev у меня есть привязки клавиш, установленные в ‘Vim’ (предпочтительно). Проблема заключается в том, что внутри редактора стилей я не могу выйти из…


    Принудительно vim выйти из списка редактирования файлов

    Чтобы внести общие изменения, я обычно редактирую все файлы в подкаталоге с помощью: for i in `ls`; do vim $i; done Теперь я хочу выйти из VIM в командной строке, но VIM не позволяет мне. После…


    Как выйти из «vim -y» в консоли?

    Случайно я набрал vim -y install python-requests вместо yum … и теперь не знаю, как выйти из vim. Стандартный вариант с shift + : + q! не работает. Есть ли какие-либо варианты, как выйти из vim,…


    Как выйти из редактора Vim, если :q или: x не работает

    Новичок в vi / vim, я обычно использую pico, но с помощью заблокированной коробки (на данный момент), которая имеет только эти 2 редактора. У меня возникли проблемы с получением его, чтобы сохранить…


    Как выйти из функции vim из кода python?

    Пример: function! MyFunc() do this do that python3 << endpython if var = something: return else: do this endpython endfunction Команда return не работает: E880: не удается обработать…


    vim: как выйти из vim, когда я разделяю окно?

    Я должен ввести: q много раз, если я разделяю окно (или открываю файл на новой вкладке) в vim, чтобы закрыть каждое разделенное окно( или вкладки). Есть ли способ выйти из vim просто введите один…


    Как временно выйти из vim и вернуться назад

    Как я могу выйти из Vim, а не из :q, а затем вернуться к продолжению редактирования?


    как скопировать что-то из редактора vim в командную строку shell

    Я намерен скопировать что-то из редактора vim в командную строку shell. Я перепробовал много способов,но все они работают только в одном редакторе vim. Мне нужно скопировать и вставить между vim…


    Related Articles

    Мансардные комнаты дизайн фото: Журнал о дизайне интерьеров и ремонте Идеи вашего дома — IVD.ru

    Содержание Идеи для интерьера мансарды на даче и в загородном домеОсобенности мансардного этажаСпальня в мансардеДетская в мансардеМансарда-кабинет Другие варианты устройства мансардного этажаШторы для окон мансардыДизайн мансарды на даче: 60 идей для интерьера с односкатной и двускатной крышейЧто учесть перед началом планирования?Дизайн интерьера мансарды дачи: продумываем стилистикуДизайн мансарды на даче: фото-примеры удачно спланированных функциональных зонСпальняДетская зонаЗоны отдыхаХозяйственный […]
    Читать далее

    Укладка подкладочного ковра под мягкую черепицу видео: Подкладочный ковер под гибкую черепицу

    Содержание Подкладочный ковер: подложка под гибкую черепицу, укладка под мягкую кровлю, битумную черепицу, можно ли обойтись без ковраЧто такое мягкая кровля?Функции подкладочного ковраОбязателен ли подкладочный ковер?Кровельный пирог под мягкую кровлюЧто такое подкладочный ковер?Виды подкладокТехнология монтажаДля чего нужны подкладочные ковры, и каковы их особенностиРазновидности подложки под гибкую черепицуКакие бывают подкладочные ковры для мягкой кровлиПодкладочный ковер с […]
    Читать далее

    Рубероид кровельный с мелкой посыпкой рм 350 гост – Рубероид кровельный РКП-350 ГОСТ 10923-93 (Мягкая кровля, ЗАО), Техническое описание

    Содержание ГОСТ 10923-64 — Рубероид. Технические требованияГОСТ 10923-64: Рубероид. Технические требованиятехнология, кровельный материал по ГОСТ с мелкой посыпкой рм 350Как делается кровляРубероид кровельный рм 350Характеристика рубероида рм 350:РубероидГОСТ 10923-93 — Рубероид. Технические условия ГОСТ 10923-64 — Рубероид. Технические требования Группа Ж14 ГОСУДАРСТВЕННЫЙ СТАНДАРТ СОЮЗА ССР РУБЕРОИД Технические требования гост 10923—64* Ruberoid. Technical requirements Взамен ГОСТ […]
    Читать далее

    Добавить комментарий

    Ваш адрес email не будет опубликован. Обязательные поля помечены *

    Search for: