在MAC上编辑apache配置文件,老是忘记sudo……
readonly的文件保存时提示 add ! to override, 但这仅是对root来说的啊!
百毒了一下竟然还有解决方案!!
:w !sudo tee %
神奇!原理嘛简单瞧了一下,就是运行外部shell命令,用 tee 把当前stdin缓冲区的数据写到当前文件(%)。
因为其中包含非asc的字符,被vi认为二进制文件,所以始终用readonly模式打开
vi后输入
:set noreadonly
就可以解决了
解决方案:1.先从当前用户切换到root用户 su - root,然后按提示输入密码即可
2.重新修改,保存即可
3.如果是修改的ens33网卡的配置,那么重新重启网络服务: sudo service network restart 即可
在MAC上编辑apache配置文件,老是忘记sudo……
readonly的文件保存时提示 add ! to override, 但这仅是对root来说的啊!
百毒了一下竟然还有解决方案!!
:w !sudo tee %神奇!原理嘛简单瞧了一下,就是运行外部shell命令,用 tee 把当前stdin缓冲区的数据写到当前文件(%)。
转载于:https://www.cnblogs.com/haries/p/vi-readonly.html