如何退出(关闭)Linux Vim/Vi 编辑器?
简介
Vim 和 Vi 是 Linux 操作系统中最广泛使用的两个文本编辑器。它们功能强大、用途广泛,并提供许多使它们成为编程、编辑配置文件或执行任何其他基于文本的任务的理想选择。但是,由于其独特的界面、命令和模式,这些编辑器对于初学者来说可能有些令人生畏。
使用这些编辑器时需要学习的最重要的事情之一是如何正确退出它们。当您在 Vim 或 Vi 中处理文档或文件时,很容易专心写作或编辑,而忘记退出程序。
基本退出命令
可以使用几个基本命令退出 Vim/Vi 编辑器。以下是最常用的几个命令:
:q
此命令用于退出 Vim/Vi 编辑器而无需保存任何更改。当您对文件进行了某些更改但决定不保存它们时,此命令很有用。例如,如果您正在编辑一个配置文件并且出现错误,最好在不保存的情况下退出并重新开始。
:q!
:q!命令与:q命令类似,但即使文件自上次保存以来已被修改,它也会强制退出而不保存任何更改。当您意外更改文件并且不希望保存它们时,这可能很有帮助。
:wq
此命令保存文件中所做的更改并退出 Vim/Vi 编辑器。在退出之前对需要保存的一些修改进行更改时,此命令很有用。例如,如果你已经写了一个新脚本或编辑了一份文档,此命令将确保退出之前完成所有更改的保存。
高级退出技术
可视模式的力量
虽然基本退出命令在许多场景中很有用,但在某些情况下,你可能需要更有选择性地退出 Vim/Vi 编辑器。一项高级技术是使用可视模式选择特定行或文本块,以便在退出前将其丢弃。为此,只需通过键入“v”进入可视模式,然后高亮显示要删除的行或文本块。
完成选择后,按下“d”键以将其删除。然后,你可以使用基本退出命令(例如:q 或:wq)退出编辑器。
可视模式还可用于在 Vim/Vi 编辑器中复制和粘贴文本。此技术通常比使用键盘上的标准复制粘贴命令更快。
若要使用可视模式复制文本,请通过键入“v”进入可视模式,高亮显示要复制的文本,然后键入“y”。之后,可以通过键入“p”将复制的文本粘贴到其他位置。
如果其他方法皆失败:强制退出
有时候,尽管你尽了最大努力,但是 Vim/Vi 编辑器仍然不允许你使用任何基本命令退出。在这些情况下,可能需要强制退出。
务必要注意,强制退出只能作为最后手段,因为它会导致丢失未保存的更改。要强制退出 Vim/Vi 编辑器,首先多次按退出键,直到你确定不再处于插入或命令行模式为止。
然后键入“:q!”,如果由于某种原因正常退出失败,再按 Enter 键。另一种方法是向 vim 进程发送信号以使其停止(杀死 vim)。
将“ps”命令与 grep 过滤器一同使用并将 kill 命令与进程 ID 号码一同使用。
$ ps -ax | grep vim 1234 pts/2 S+ 0:00 vim $ kill -9 1234
在某些情况下,如果 Vim/Vi 编辑器完全无响应,你可能需要完全强制退出终端会话。这可以通过使用键盘上的“Ctrl + Alt + Delete”键或使用操作系统任务管理器来完成。
解决常见问题
“E37:自上次更改后未写入”错误
在尝试退出 Vim/Vi 编辑器时遇到的最常见问题之一是“E37:自上次更改后未写入”错误。当你在未保存对文件所做的更改的情况下尝试退出时,就会发生此错误。
换言之,如果你已经做出了更改但尚未保存它们,Vim/Vi 将不会让你退出,直到你解决此问题为止。为了解决此问题,有几种选择可供选择。
最简单的办法是通过键入“:w”保存你的更改,然后尝试使用基本退出命令之一再次退出。另一个选择是通过键入“:q!”丢弃你的更改,此命令会丢弃你的更改并在不保存任何内容的情况下强制退出 Vim/Vi。
预防常见问题
虽然了解在尝试退出 Vim/Vi 编辑器时如何解决常见问题非常重要,但同样重要的是要知道如何从一开始就防止这些问题发生。为了避免遇到“E37:自上次更改后未写入”错误,最好在使用 Vim/Vi 编辑文件时经常保存你的工作。这可以通过使用“:w”命令轻松完成,此命令保存自上次保存以来所做的任何更改。
此外,如果你正在处理一个特别长或复杂的文件,请考虑在进行过程中休息并定期保存。如果在编辑时你的系统或计算机出现问题,这样有助于防止数据丢失或挫败感。
在尝试更高级技术或快捷方式之前,请务必了解每个基本退出命令的工作原理。熟悉这些命令将有助于确保你每次都能快速高效地退出 Vim/Vi 编辑器,而不会出错或出现并发症。
使用技巧
自定义命令映射的技巧
Vim/Vi 编辑器高度可定制,允许用户映射自定义命令,从而使退出过程更加高效。例如,你可以设置一个触发特定退出命令或一系列命令的快捷键。
以下是如何操作 −
打开你的 .vimrc 文件(如果不存在,则创建一个)
添加以下行以将命令映射到键: "map <key> <command sequence>
用所需的快捷键替换 <key>,用你想要使用的退出命令(例如,":q"、":wq")替换 <command sequence>
保存并关闭 .vimrc 文件,然后打开 Vim/Vi 编辑器,使你的更改生效。
此技巧对那些经常使用 Vim/Vi 编辑器且希望通过避免重复输入来节省时间的人特别有用。
插件的力量
有几个插件专门针对退出 Vim/Vi 编辑器,例如 "vim-plug"、"nerdtree"、"fzf.vim" 等。Vim-plug 是一个流行的插件管理器,它简化了其他插件的安装和管理。
NERDTree 提供了一个文件浏览器,你可以使用它来浏览和打开系统中的文件,而无需离开 Vim/Vi 编辑器。Fzf.vim 允许你使用模糊逻辑搜索文件,这样可以更轻松地在你的目录中找到特定文件。
结论
在本文中,我们介绍了在 Linux 系统中退出 Vim/Vi 编辑器的一些基础知识。我们首先讨论了了解如何正确退出 Vim/Vi 编辑器的重要性,因为不当退出可能会导致数据丢失或未保存更改。
然后我们继续解释了 ":q"、":q!" 和 ":wq" 等基本退出命令,以及使用可视模式或强制退出退出更高级技术。此外,我们讨论了用户在尝试退出编辑器时可能遇到的常见问题,并提供了针对每个问题的解决方案。