有时当我编辑一个需要root权限的文件时(例如/ etc下的文件),但是我忘记运行vim作为sudo。
编辑完成后,键入:wq
保存并离开,我发现我不能,甚至使用!wq
,因为这个文件是只读的。
如果我离开并重新编辑文件,我的所有工作都将丢失,但是如果没有,我不能保存我的编辑。 那么,如何在不离开vim的情况下获得root许可?
要强制保存,请使用以下命令
:w !sudo tee %
它会提示你输入你的密码。
提到的tee
技巧很好, 如果你经常需要这个,我会推荐SudoEdit插件 ,它提供了一个:SudoWrite
命令(甚至是一个sudo:
协议处理程序)。