有时候我需要编辑一些需要管理员权限的文件(例如在 /etc 下的文件),但是我忘记以sudo权限来运行vim了。
编辑完成后,当我输入:wq
来保存并离开时,我发现即使使用!wq
命令也无法保存,因为该文件只读。
如果我离开重新编辑该文件,那么之前所有的修改都会丢失,但如果不这样做,我也不能保存我的编辑内容。那么,如何在vim中获得root权限以便进行写入操作而不必离开vim呢?
有时候我需要编辑一些需要管理员权限的文件(例如在 /etc 下的文件),但是我忘记以sudo权限来运行vim了。
编辑完成后,当我输入:wq
来保存并离开时,我发现即使使用!wq
命令也无法保存,因为该文件只读。
如果我离开重新编辑该文件,那么之前所有的修改都会丢失,但如果不这样做,我也不能保存我的编辑内容。那么,如何在vim中获得root权限以便进行写入操作而不必离开vim呢?
要强制保存,请使用以下命令
:w !sudo tee %
它会提示您输入密码。
:command! W w !sudo tee % >/dev/null
。该命令用于在保存文件时使用sudo权限,而不必记住长长的命令。 - ib.