IT技术博客大学习 共学习 共进步
全部 移动开发 后端 数据库 AI 算法 安全 DevOps 前端 设计 开发者

在vim保存时获得sudo权限

本机暂存

   在维护线上服务的时候,经常要编辑一些不属于操作用户的文件,就是只有r权限的那种,每次保存都会提示read only。只能先记下来改了什么,然后再退出,然后 sudo vim 再做保存。

   下面的命令可以不退出vim进程,直接用vim命令获取sudo权限,然后直接保存文件。

:w !sudo tee %

   命令:w !{cmd},让 vim 执行一个外部命令{cmd},然后把当前缓冲区的内容从 stdin 传入。

   tee 是一个把 stdin 保存到文件的小工具。

   而 %,是vim当中一个只读寄存器的名字,总保存着当前编辑文件的文件路径。

   所以执行这个命令,就相当于从vim外部修改了当前编辑的文件。

同分类推荐文章

  1. 从零重建 macOS 开发机:可复现的环境初始化流程 (2026-06-14 20:36:00)
  2. 百度物理网络监控工具开源第二弹:毫秒级监控工具 baize,让你的网络问题无处遁形 (2026-06-11 08:10:28)
  3. How to Set Up Homebrew Tap for Private CLI Tools: A Complete Guide (2026-05-27 02:13:03)

查看更多 DevOps 文章 →

建议继续学习

  1. vim几个小技巧(批量替换,列编辑) (累计阅读 37,516)
  2. 简明Vim练级攻略 (累计阅读 22,273)
  3. Vim下的代码自动补全和代码跳转阅读 (累计阅读 15,347)
  4. 为什么要用 Emacs/Vim,而不是任何其他编辑器 (累计阅读 13,017)
  5. 高效Linux用户需要了解的命令行技能 (累计阅读 12,824)
  6. vim入门,进阶与折腾 (累计阅读 10,779)
  7. 在vim(gvim)中运行终端(对,你没有看错,我也没有写反) (累计阅读 10,743)
  8. 每个程序员都应该知道的8个Linux命令 (累计阅读 10,744)
  9. 让vim在终端下的配色亮起来! (累计阅读 10,062)
  10. 你应该知道的16个Linux服务器监控命令 (累计阅读 8,637)