Vim 强制保存只读类型文件的方法

发现问题:

在使用vim时,当我们以普通用户去打开一个只有root用户才有权限操作的文件时,我们编辑完成之后,正要保存,却发现,这个文件我们没有权限修改。

每次遇到这样的问题,我都很头疼,好不容易把文件编辑完了,却无法保存,就只能放弃,然后退出,再以root权限打开,重新编辑。

我总是相信,所有的问题都有解决的方法。通过查阅资料,终于解决了这个问题。

解决方案:

底行命令模式执行: :w !sudo tee %

     w: 表示保存文件

    !: 表示执行外部命令

     tee: linux命令,这个有点复杂,可以查看linux命令帮助

     %: 在执行外部命令时,%会扩展成当前文件名;这个%区别于替换时的%,替换时%的意义是代表整个文件,而不是文件名

上述方式非常完美的解决了不能保存只读文件的问题,但毕竟命令还是有些长,为了避免每次输入一长串的命令,可以将它映射为一个简单的命令加到 .vimrc 中:

?

" Allow saving of files as sudo when I forgot to start vim using sudo.

 cmap w!! w !sudo tee > /dev/null %

这样,简单的运行:w!!即可。命令后半部分> /dev/null作用为显式的丢掉标准输出的内容。

总结

以上就是关于Vim强制保存只读文件的方法,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流。

原文链接:http://kuanghy.github.io/2015/12/30/sudo-vim

原创文章,作者:FGDLY,如若转载,请注明出处:https://www.wangzhanshi.com/n/7521.html

(0)
FGDLY的头像FGDLY
上一篇 2025年1月1日 16:30:13
下一篇 2025年1月1日 16:30:16

相关推荐

  • 用开源的 Darktable 进行照片处理

    如果你拍摄的照片值得处理,那么你可以看看 Darktable 为你提供了什么。 很难说好照片是如何产生的。你必须在正确的时间出现在正确的地点。你必须准备好相机和构图的观察力。而这只…

    2025年1月1日
  • 2021 年的十二件 Linux 大事

    现在,是时候回顾一下今年影响 Linux 和 Linux 用户的一些大事了。 2021 年即将结束。Linux 今年屡有大事,虽然并不全是好消息。 让我来分享一些来自 Linux …

    2025年1月1日
  • linux尝试登录失败后锁定用户账户的两种方法

    本文主要给大家介绍了关于linux尝试登录失败后锁定用户账户的相关内容,分享出来供大家参考学习,下面来一起看看详细的介绍吧。 pam_tally2模块(方法一) 用于对系统进行失败…

    Linux 2025年1月1日
  • linux sudo命令详解

    简单的说,sudo 是一种权限管理机制,管理员可以授权于一些普通用户去执行一些 root 执行的操作,而不需要知道 root 的密码。 严谨些说,sudo 允许一个已授权用户以超级…

    2025年1月1日
  • Linux输出信息并将信息记录到文件(tee命令)

    前言 最近工作中遇到一个需求,需要将程序的输出写到终端,同时写入文件,通过查找相关的资料,发现可以用 tee 命令实现,首先来解释一下 tee 命令的作用: ? read from…

    2025年1月1日
  • Linux 检测服务器是否连接着网络

    Linux 检测服务器是否连接着网络 摘要: 每隔5分钟检测一次服务器是否连接着网络,如果三次检测都没有网络?则自动关机! 主要使用场景: 由于自己有一台服务器放在偏远的老家,有可…

    Linux 2025年1月1日
  • linux性能调试之vmstat分析

    1.性能分析的目的 1)找出系统性能瓶颈(包括硬件瓶颈和软件瓶颈); 2)提供性能优化的方案(升级硬件?改进系统系统结构?); 3)达到合理的硬件和软件配置; 4)使系统资源使用达…

    2025年1月1日
  • Linux网络DNS域名如何解析服务

    一、DNS概述 1.DNS系统的作用 正向解析:根据域名查找对应的IP地址 反向解析:根据IP地址查找对应的域名 DNS使用端口:DNS服务器使用TCP和UDP的53端口,TCP的…

    2024年12月17日
  • Linux修改用户密码使用期限账号到期时间问题

    Linux修改用户密码使用期限 用chage命令进行查看。 主要用与密码失效是通过此命令来管理 [root@node2 ~ ]# chage –help Usage: chage…

    2024年12月17日
  • Linux安装Docker-Compose过程

    Linux安装Docker-Compose docker-compose官网文档 Docker-Compose安装 sudo curl -L “https://github.com…

    2024年12月17日

发表回复

登录后才能评论