15

有时当我编辑需要 root 权限的文件时(例如 /etc 下的文件),但我忘记将 vim 作为 sudo 运行。

编辑完成后,输入:wq保存离开,我发现我不能,即使使用!wq,因为文件是只读的。

如果我离开并重新编辑文件,我的所有工作都将丢失,但如果没有,我将无法保存我的编辑。那么,如何在不离开 vim 的情况下获得 root 权限来写呢?

4

2 回答 2

25

要强制保存,请使用以下命令

:w !sudo tee %

它会提示您输入密码。

于 2012-06-06T13:21:48.337 回答
3

提到的技巧tee很好;如果你经常需要这个,我会推荐SudoEdit 插件,它提供了一个:SudoWrite命令(甚至是一个sudo:协议处理程序)。

于 2013-02-08T20:24:30.507 回答