Contents
  1. 1. 前言
  2. 2. 解决方法

前言


用vim时,经常会出现编辑完文件没权限保存。难到要重新敲一遍?

解决方法

  1. 在vim状态,直接用
:w !sudo tee %

:w !sudo sh -c "cat > %"

命令详解:

  • w: 将所有行输出

  • !:vim里执行命令

  • sudo:切换成root执行
  • tee:重定向输出多个文件
  • %:vim里表示当前文件
  1. 可以添加下面其中一条到/etc/vim/vimrc ,之后vim里直接用w!!即可切换成root保存了
cmap w!! w !sudo tee > /dev/null %

cmap w!! w !sudo sh -c "cat > %"

command -nargs=? w!! :w !sudo tee %
  1. 用sudo vim 编辑把之前的全都复制进去,或保存到一个临时文件再sudo mv 回去。(太麻烦不推荐)
Contents
  1. 1. 前言
  2. 2. 解决方法