如何从命令行关闭 vim?

如何从命令行关闭 vim?

我知道这更像是一个常见的 Linux 问题,但无论如何。因此,当我在命令提示符中输入 vim 之类的程序时,它会显示文件中的所有文本,我可以对其进行编辑等。但我不知道如何关闭或保存文件并返回命令提示符而不终止进程。任何帮助都值得感激。

答案1

在 vim 中有 3 种不同的模式:

  • 插入 - 允许正常打字和编辑
  • 视觉-用于选择复制/粘贴等。
  • 正常 - 用于命令

要返回正常模式,您可以随时按esc

进入正常模式后,按:开始命令(您会看到它出现在左下角)。以下命令与退出 vim 相关:

  • :q- 如果没有做出任何改变则退出
  • :q!- 退出并销毁所做的任何更改
  • :wq- 写入更改(保存)并退出
  • :x- 类似:wq,只有当文件发生更改时才写入文件,然后退出

答案2

首先,按下按键escape。1

然后只需输入ZZ(即连续两个大写字母 Z)。
或者,输入:x。两者都将保存所有编辑并离开。
您也可以使用:wq

或者,您可以输入:q (又名“请退出“)仅当您尚未进行编辑时,此操作才会退出。

如果你已经进行了编辑,并且想要放弃它们并离开,请输入:q!(又称“别再说了,该死的“!”)

1:这可确保您处于“命令”模式。您可以在该模式下输入命令,例如退出所需的命令。

答案3

令我们感到不便的是,没有退出命令行程序的通用方法,就像图形程序中的“X”按钮一样。

许多命令行程序都遵循使用Q(例如mantop)或Ctrl+ C(例如pingwatch)退出的主题,但这有很大差异,尤其是在文本编辑器中:

  • Vim尤其是使用:q!然后的模糊组合Enter,通常在此之前按几次以Esc达到良好的效果。
  • Emacs,另一颗宝石,更喜欢Ctrl+X然后是Ctrl+ C

像这样的编辑器对于缺乏经验的人来说是个陷阱。我个人的偏好和建议是,当被迫在命令行上编辑文本时,使用更不言自明的Joe 的专属编辑 (JOE)

答案4

如果 Esc :q!不起作用,

首先尝试Ctrl+ (解锁已用+q锁定的屏幕)Ctrls

然后重试Esc :q!(退出而不保存)或Esc :wq(保存并退出)

相关内容