报错如下图所示:
网上的解决方法:
- 文件为只读文件,无法修改。
- 使用命令:w!强制存盘即可
- 在vim模式下,键入以下命令::w!
- 存盘后在使用vim命令检查是否保存,如未保存,编辑后重复以上操作。
- 或者报出linux中vi保存文件时的
“Can’t open file for writing”
E212: Can’t open file for writing
Press ENTER or type command to continue - 出现这个错误的原因可能有两个:一是当前用户的权限不足,二是此文件可能正被其他程序或用户使用。这里的错误原因是前者,解决方案是在使用vi命令打开文件时,前面加上sudo来临时提供管理员权限,即使用命令“sudo vi grub.cfg”打开编辑文件。由此看来,sudo命令是很有用的,当我们执行某种操作系统提示诸如“operation not permitted”等权限不足信息时,我们很多时候都可以在命令前面加上sudo来解决权限不足问题
但是使用以上方法没有解决我的问题(以下是我的解决方案):
- 首先使用指令:
df -h
查看,内存占用情况,不是内存的问题。
- 第二查看是否是终端窗口是否是不是开了不止一个,通过检查不是窗口的问题。
- 然后
ls -al
查看文件权限,并不是文件权限的问题。
- 最后,我看到了编码格式dos (windows的编码格式,因为文件是从windows拷贝过来的),而linux在默认情况下是utf-8 的编码格式,所以可能是编码的问题,然后再vim里面输入:
:set fileencoding=utf-8
然后回车后就可以进行代码的修改和保存了。