如何将我在vim中打开的文件保存为错误的用户?

Tec*_*hie 29 vi vim

这种情况一直发生在我身上.我以普通用户身份登录并使用vim开始编辑文件.编辑完成后,当我尝试保存文件时,我没有足够的权限来保存文件.我必须关闭文件,以root身份登录并再次开始编辑.以下是vim中给出的错误:

E45: 'readonly' option is set (add ! to override)
Run Code Online (Sandbox Code Playgroud)

或者用普通的vi:

File is read only
Run Code Online (Sandbox Code Playgroud)

有没有办法保存而不离开编辑器?

Tec*_*hie 88

尝试以下命令

:w !sudo tee %
Run Code Online (Sandbox Code Playgroud)

说明

  • :w - 写
  • !sudo - 调用shell sudo命令
  • tee - 使用tee重定向write(:w)命令的输出
  • % - 当前文件名

更多信息