vim E212错误

首先这个错误是自己的大意而引起的,在创建文件的时候用了root权限,发现在vi里面编辑完成后,wq没办法保存并退出,显示错误E212:无法打开并写入文件。以前还没在vi里面运行过命令,切入到尾行模式,w !sudo  tee %然后回车,按照提示选择L就行了。

这个命令的原理是这样的

百分号(“%”)代表当前文件名

根据man vim的提示:

:[range]w[rite] !{cmd}  Execute {cmd} with [range] lines as standard input
(note the space in front of the ‘!’).  {cmd} is
executed like with “:!{cmd}”, any ‘!’ is replaced with
the previous command

“:w !sudo tee %”这条命令的含义是把当前编辑的文件的内容当做标准输入输入到命令sudo tee 文件名里去
也就是sudo保存为当前文件名
==============================================================================================================
后面我去查看了文件夹的权限,果然只有root用户才有写入执行权限,于是改变了下文件夹的拥有者
chown -R groupname.username filename
把组名、用户名和文件名替换掉就可以了
-R就是对filename文件夹下所有的子目录或文件递归执行命令。

  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在使用vim保存退出时出现E212错误是由于当前用户没有权限写入文件所导致的。有三种方法可以解决这个问题。 第一种方法是放弃当前的编辑,重新使用sudo vim命令来编辑文件。这种方法可能不是最理想的选择。 第二种方法是先将文件保存为一个临时文件,然后退出vim,再使用sudo mv命令将临时文件改为你要编辑的文件。具体操作是使用命令":file /tmp/file.txt"将文件保存为临时文件,然后使用":wq"退出vim,最后使用sudo mv命令将临时文件移动到目标位置。 第三种方法是直接在vim中使用sudo命令提升权限,并使用tee命令来写入文件。具体操作是使用命令":w !sudo tee %",这样可以在保存文件时使用sudo权限,并将内容写入到文件中。 这些方法可以解决在vim保存退出时出现E212错误的问题,你可以选择其中一种方法来解决你的问题。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* [vimE212:无法打开并写入文件的解决办法](https://blog.csdn.net/hejinjing_tom_com/article/details/125311050)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *3* [vimE212:无法打开并写入文件 的解决办法](https://blog.csdn.net/OscaronMar/article/details/82669178)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值