Как закрыть vim из командной строки?

Я знаю, что это скорее общий вопрос о Linux, но без него. Поэтому, когда я ввожу такую ​​программу, как vim, в командной строке, она отображает весь текст в файле, и я могу его редактировать и т. Д. Но я не могу понять, как закрыть или сохранить файл и вернуться в командную строку, не убивая процесс. Приветствуется любая помощь.


В vim есть 3 разных режима:

  • Insert — позволяет печатать и редактировать как обычно
  • Visual — используется для выбора копирования/вставки и т. д.
  • Normal — используется для команд

Чтобы вернуться к нормальному режим, вы всегда можете нажать esc .

В нормальном режиме нажмите : , чтобы начать команду (вы ‘ он появится внизу слева). Следующие команды связаны с выходом из vim:

  • : q — выйти, если не было внесено никаких изменений
  • : q! — выйти и уничтожить все сделанные изменения
  • : wq — записать изменения (сохранить) и выйти
  • : x — аналогично : wq , только записывать файл, если были внесены изменения, а затем выходить

Сначала нажмите клавишу escape . 1

Затем просто введите ZZ (это два заглавных Z подряд).
Или введите : x код>. Любой из них сохранит все изменения и уйдет.
Вы также можете использовать :wq

Или же вы можете ввести : q (он же, « выйти, пожалуйста ») Это выйдет, только если вы не внесли изменений.

Если вы внесли правки и хотите отменить их и уйти, введите : q! (он же « выйти, черт возьми ! «)

1 : это гарантирует, что вы находитесь в« командном »режиме. Что вы хотите для ввода команд, таких как те, которые необходимы для выхода.


К нашему большому неудобству , не существует общего метода для выхода из программ командной строки, такого как кнопка «X» для графических программ.

Многие программы командной строки следуют теме использования либо Q (например, man и top ) или Ctrl + C (например, ping и watch ) для выхода, но это значительно различается, особенно среди текстовых редакторов:

  • Vim, в частности, использует непонятную комбинацию : q! , затем Enter , обычно предшествует несколько нажатий Esc для хорошая мера.
  • Emacs, еще один драгоценный камень, предпочитает Ctrl + X , за которым следует Ctrl + C .

Подобные редакторы — ловушка для неопытных. Мое личное предпочтение и рекомендация — при необходимости редактировать текст в командной строке вместо этого использовать более понятный редактор Joe’s Own Editor (JOE)..

3


Наряду с ответом Джондавиджона , вот две ссылки, которые содержат необходимую информацию об использовании vim.

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

    http://www.viemu.com/a_vi_vim_graphical_cheat_sheet_tutorial.html

  2. Это лучший учебник по vim, с которым я когда-либо работал. Это разговорный и легкий для понимания формат, что связано с его форматом IRC/обмена мгновенными сообщениями.

    http://www.vi-improved.org/tutorial.php

Наконец, есть такие, как aendruk, которые просто не хотят использовать расширенные текстовые редакторы командной строки. В частности, у Vim крутая кривая обучения, и на самом деле требуется некоторое первоначальное усилие, чтобы к нему привыкнуть. Но он очень быстрый и очень мощный. Если у вас есть интерес к Linux, выходящий за рамки базового использования рабочего стола, стоит потратить время на изучение достойного текстового редактора командной строки, такого как Vim или Emacs. Если вам просто нужно отредактировать какой-то текст и это не особо важно, попробуйте вместо этого набрать gedit filename.txt . Он запустит знакомую графическую программу, очень похожую на Блокнот из Windows.

8


если Esc : q! не работает,

сначала попробуйте Ctrl + q (для разблокировки экрана, который был заблокирован с помощью Ctrl + s )

, затем повторите Esc : q! (чтобы выйти без сохранения) или Esc : wq (для сохранения и выхода)


Хотите выйти без сохранения:

  1. Нажмите ESC
  2. Нажмите Z Q

Выйти с сохранением:

  1. Нажмите ESC
  2. Нажмите ZZ


Как мне выйти из Vi?

Я запустил Vi на своем компьютере с Ubuntu. Однако я новичок в Ви, и теперь не могу уйти. Я вижу редактор и могу писать текст, внизу есть метка «запись».

Как выйти из Vi?


vim — это модальный редактор. Нажмите кнопку ESC , чтобы перейти в Нормальный (командный) режим, затем введите : q и нажмите Введите .

Чтобы выйти без сохранения изменений, введите : q! и нажмите Enter .

См. также раздел «Выход» в документации Vim..


Я использую ctrl + [ для генерации последовательности esc , это избавляет меня от необходимости перемещать пальцы из домашней строки (помните, что клавиша esc находилась в другом месте, когда Был изобретен vi . : wq будет записывать все файлы независимо от необходимости. Я предлагаю использовать ZZ (который равен shift + z дважды), который будет записывать, только если в файл было внесено изменение. Также : xa то же самое как ZZ , за исключением случаев, когда в экземпляре редактора открыто более 1 файла (например, вкладки vim). примечание: я не уверен, что все это на 100% совместимо с все клоны vi, но я знаю, что он работает с vim

2


Другой способ выхода из vi — Esc : x .

Опция используется для сохранения и бросить в время.

1


Как сказал Синан, vim — это модальный редактор. Если вы хотите узнать, работает ли это для вас, возможно, вам стоит потратить немного времени и запустить vimtutor , который является интерактивным способом изучения vim. (Здесь также рассказывается, как выйти, что означают режимы и что вы можете делать в каждом режиме).


После изменения нажмите ESC и введите заданную команду : wq! .

Это принудительно запишет новую модификацию в файл, доступный только для чтения. Раньше это не работало, потому что файл доступен только для чтения.

2


попробуйте комбинацию control и Z

1

Оцените статью
clickpad.ru
Добавить комментарий