如果使用 离开编辑的文件: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!
很清楚。