Vim: 退出 (:wq) 时带有尾随感叹号!目的是什么?

Vim: 退出 (:wq) 时带有尾随感叹号!目的是什么?

如果使用 离开编辑的文件:q!,则它会丢弃更新。如果使用 离开:wq,则它会写入更新并退出 Vim。

但目的是什么:wq!(后面带有感叹号)?

我还没有找到对此很好的解释。

答案1

“!“ 方法不要用警告来唠叨我; 去做就对了。

如果您尝试vim /etc/hosts,并进行更改,然后尝试使用 保存:wq!- “!” 是没有意义的。这是一个无法强制的真正错误,因此使用“!”不起作用。

一个有用的例子...

touch ~/example
chmod -w ~/example
vim ~/example

如果你打开一个文件,并且你只有读权限,但事先已经剥夺了你的写权限,那么这个警告可以被“!”覆盖(与中的权限错误不同/etc/),因此在这种情况下“:wq!”很方便(比跳转到 shell 进行修复更快)。

答案2

:wq!意思是“写入此缓冲区然后关闭它,不问任何问题。”如果你打开了任何其他缓冲区,它们将保持打开状态并且 vim 不会退出。

答案3

:x!做同样的事情,我不知道它:wq!来自现代文献的哪里,因为它在 40 年前就已经过时了。

问题是wq!这是否意味着写入然后强制退出或强制写入然后退出?这x!很清楚。

相关内容