红联Linux门户
Linux帮助

Linux环境下VI/VIM编辑文件时无权限保存的解决方法

发布时间:2015-12-03 09:58:53来源:linux网站作者:forlong401

在Linux环境下,如果直接使用VI/VIM命令编辑没有修改权限的文件时,保存的时候就会提示用户无法进行保存操作,一般的解决方法只能是关闭文件重新以sudo权限打开该文件编辑后再保存(前提是用户具有sudo权限)。其实,在VI/VIM模式下通过一些简单的命令,就能在不关闭当前文件的情况下达到保存文件的目的(感谢晓哲老师提供的方法):

输入命令:%! sudo tee % > /dev/null
按提示输入sudo权限密码
输入“L"(Load File)
输入:q命令退出


关于“%! sudo tee % > /dev/null”这条命令的说明如下:

%       #VI/VIM编辑的文件内容

!      #管道

sudo     #以root权限操作

tee     #将标准输入(即通过管道过来的当前编辑的文件内容)输出到标准输出,同时写入到指定的文件中(即VI/VIM当前编辑的文件)

%       #VI/VIM编辑的文件

> /dev/null    #将标准输出重定向到/dev/null(不输出显示)


Vi/Vim基本使用命令:http://www.linuxdiyf.com/linux/4611.html