Я знаю, что это больше общий вопрос о Linux, но ж / д. Поэтому, когда я вхожу в командную строку, такую как vim, она отображает весь текст в файле, я могу редактировать его и т. Д. Но я не могу понять, как закрыть или сохранить файл и вернуться в командную строку, не убивая процесс. Любая помощь приветствуется.
command-line
vim
Letseatlunch
источник
источник
Ответы:
В vim есть 3 разных режима:
Чтобы вернуться в обычный режим, вы всегда можете нажать esc.
Когда вы находитесь в обычном режиме Нажмите,
:
чтобы начать команду (вы увидите, что она появляется в левом нижнем углу). Следующие команды связаны с выходом из vim::q
- выйти, если не было внесено никаких изменений:q!
- выйти и уничтожить любые сделанные изменения:wq
- записать изменения (сохранить) и выйти:x
- похоже:wq
, только записать файл, если были внесены изменения, затем выйтиисточник
:x
ярлык для:wq
mode()
функция в vim может возвращать 18 различных значений.:
в обычном режиме. Если вы нажметеesc
, вы вернетесь в нормальный режим. -1 за то, что он вводит в заблуждение людей, пытающихся выучить стандартную терминологию (и, следовательно, уметь понимать систему помощи).Сначала нажмите escapeклавишу. 1
Затем просто введите
ZZ
(это два заглавных Z подряд).Или введите
:x
. Либо сохранит любые правки и уйдет.Вы также можете использовать
:wq
Кроме того, вы можете набрать
:q
(иначе, « выйти, пожалуйста »). Это будет выход, только если вы не внесли изменения.Если вы внесли изменения, и вы хотите отменить их и уйти, введите
:q!
(aka " выйти, черт побери !")1 : это гарантирует, что вы находитесь в «командном» режиме. Который вы хотите для ввода команд, как те, которые необходимы для выхода.
источник
К нашему большому неудобству, нет общего способа выхода из программ командной строки, как есть кнопка «X» для графических программ.
Многие программы командной строки следуют теме использования Q(например,
man
иtop
) или Ctrl+ C(например,ping
иwatch
) для выхода, но это значительно различается, особенно среди текстовых редакторов::q!
то Enter, как правило , предшествует несколько прессов Escдля хорошей меры.Подобные редакторы - ловушки для неопытных. Мои личные предпочтения и рекомендации заключаются в том, чтобы при необходимости редактировать текст в командной строке использовать вместо этого более понятный собственный редактор Джо (JOE) .
источник
nano
это гораздо более универсальный текстовый редактор, не требующий пояснений.Наряду с ответом Джондавиджона, здесь есть две ссылки, которые имеют необходимую информацию об использовании vim.
Это изображение клавиатуры, которое показывает вам, что делает каждая клавиша в зависимости от того, находитесь ли вы в режиме редактирования, командном или визуальном режимах:
http://www.viemu.com/a_vi_vim_graphical_cheat_sheet_tutorial.html
Это лучший урок Vim, который я когда-либо работал. Он понятен и понятен, что связано с форматом IRC / мгновенных сообщений.
http://www.vi-improved.org/tutorial.php
Наконец, есть такие как aendruk, которые просто не хотят использовать расширенные текстовые редакторы командной строки. В частности, у Vim крутая кривая обучения, и он действительно требует определенных усилий, чтобы привыкнуть. Но это очень быстро и очень мощно. Если у вас есть интерес к linux помимо базового использования рабочего стола, стоит потратить время на изучение достойного текстового редактора командной строки, такого как Vim или Emacs. Если вам просто нужно отредактировать какой-то текст, и вам все равно, попробуйте набрать текст
gedit filename.txt
. Он запустит знакомую графическую программу, очень похожую на Блокнот из Windows.источник
если Esc
:q!
не работает,попробуйте сначала Ctrl+ q(чтобы разблокировать экран, заблокированный Ctrl+ s)
затем повторите попытку Esc
:q!
(чтобы выйти без сохранения) или Esc:wq
(чтобы сохранить и выйти)источник
Хочу выйти без сохранения:
Выход с сохранением:
источник