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