通常在编辑配置文件时,我会用 vi 打开一个,然后当我去保存它时发现我没有输入
sudo vi filename
有没有办法给 vi sudo 权限来保存文件?我似乎记得不久前在查找有关 vi 的一些内容时看到了一些关于此的内容,但现在我找不到它。
原文由 Paul Wicks 发布,翻译遵循 CC BY-SA 4.0 许可协议
通常在编辑配置文件时,我会用 vi 打开一个,然后当我去保存它时发现我没有输入
sudo vi filename
有没有办法给 vi sudo 权限来保存文件?我似乎记得不久前在查找有关 vi 的一些内容时看到了一些关于此的内容,但现在我找不到它。
原文由 Paul Wicks 发布,翻译遵循 CC BY-SA 4.0 许可协议
一般来说,你不能改变vi进程的有效用户id,但是你可以这样做:
:w !sudo tee myfile
原文由 Mark Harrison 发布,翻译遵循 CC BY-SA 2.5 许可协议
7 回答5.3k 阅读
4 回答4k 阅读
2 回答5.9k 阅读✓ 已解决
2 回答2.5k 阅读✓ 已解决
1 回答2.3k 阅读✓ 已解决
2 回答793 阅读✓ 已解决
2 回答3.2k 阅读
%
替换为当前文件名,因此您可以使用:(
vim
将检测到文件已更改并询问您是否要重新加载它。通过选择[L]
而不是 OK 说是。)作为快捷方式,您可以定义自己的命令。将以下内容放入您的
.vimrc
:使用上述内容,您可以键入
:W<Enter>
来保存文件。自从我写了这个,我找到了一个更好的方法(在我看来)来做到这一点:这样你就可以输入
:w!!
它将被扩展为完整的命令行,将光标留在最后,所以你可以用你自己的文件名替换%
,如果你喜欢。