📅  最后修改于: 2023-12-03 15:23:20.877000             🧑  作者: Mango
有时候,您可能需要编辑只有超级用户才能访问的文件。但是,如果您以普通用户身份打开vim编辑器,您将无法编辑或保存这些文件。这时使用sudo命令将vim以超级用户身份运行是解决问题的办法。
要在vim中使用sudo命令编辑文件,请执行以下步骤:
打开终端并用vim打开要编辑的文件
$ vim filename
当您尝试保存文件时,您将看到“E45: ‘readonly’选项被设置”的错误。这是因为您没有权限编辑这个文件。
为了解决这个问题,请在vim命令模式下,输入以下命令:
:w !sudo tee %
这个命令做了以下事情:
:w
命令表示保存当前文件。!sudo
命令告诉vim以超级用户身份运行。tee %
命令将vim缓冲区中的内容输出到当前文件,由于sudo权限,可以覆盖只有超级用户才能访问的文件。当您输入该命令时,系统可能会要求您输入sudo密码。输入密码后,文件将保存并退出。
要更快地使用sudo来编辑文件,请在vimrc文件中添加以下快捷键:
cnoremap w!! sudo tee > /dev/null %
这个快捷键将w!!
转换为sudo tee > /dev/null %
命令。因此,当您在vim中输入:w!!
时,vim将要求您输入sudo密码,并将文件保存到磁盘上。
现在,您可以像普通用户一样打开和编辑文件,无需以超级用户身份运行vim,也不必离开vim编辑器来使用sudo命令编辑文件。
在vim中以超级用户身份运行sudo命令以编辑只有超级用户可以访问的文件很简单。通过简单的命令和快捷键,您可以轻松地完成这个任务,而无需离开vim编辑器。