If one leaves an edited file with :q!
, then it discards the updates.
If one leaves with with :wq
, then it writes the updates and quits Vim.
But what's the purpose of :wq!
(with a trailing exclamation mark)?
I have found no good explanation about that.
Best Answer
"!" means don't nag me with warnings; just do it.
If you try and
vim /etc/hosts
, and make changes and try and save with:wq!
- the "!" is moot. That is a real error that can't be forced thus use of "!" won't work.A useful example..
If you open a file where you have READ access only but have taken away your WRITE access before hand, that warning can be overridden by the "!" (unlike permissions error in
/etc/
), thus a ":wq!" in this case is handy (quicker than jumping to shell to fix).