Skip to content

cmd - 忘记sudo提权

::: warning 问题描述 使用vim编辑文件时,难免写了一半,想要保存的时候,发现切忘记了使用sudo提权。不可能退出又重新写一遍。 :::

这要分开几种情况进行讨论:

属性是readonly

对于这个你有两种方式进行解决:

  • 运行:w!命令强制写入
  • 修改属性:set noreadonly and 再执行:w命令正常写入

忘记sudo提权

对于这个你有两种方式进行解决:

  • 在vim上执行:w !sudo tee %命令,它会把文件内容写到tee命令,有tee命令执行sudo来覆盖原文件;
  • 在vim上执行:!sudo chmod +w %,修改文件的权限,再执行:w!,这种方式会有警告提示,忽略即可。

没有sudo权限

  • 在vim上执行:w! ~/tempfile.ext写到临时文件,让有sudo权限的人来覆盖。