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

How can I save a file I opened in vim as the wrong user?

这一直发生在我身上。我以普通用户的身份登录并开始使用vim编辑文件。编辑完成后,当我尝试保存文件时,我没有足够的权限保存该文件。我必须关闭文件,以根用户身份登录,然后重新开始编辑。以下是VIM中的给定错误:

1
E45: 'readonly' option is set (add ! to override)

或在VI中:

1
File is read only

有没有一种不用离开编辑器就可以保存的方法?


尝试以下命令

1
:w !sudo tee %

解释

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

更多信息


实际上是"vim文件名"试图保存文件时显示错误

'readonly' option is set (add ! to override)

为了解决这个问题,请用这种方式编写命令

sudo vim filename

它将解决这个问题。现在您拥有sudo特权,您可以轻松使用:x或:wq