我们在使用vim编辑文本的时候,并不是直接在原文本的基础上进行编辑的,而是会先生成一个.swp的文件,我们是在这个.swp文件上进行编辑的,命令模式下我们输入“w”的时候文本才会复制到原文本,输入“q”后才会删除.swp文件。
出现这个报错的原因:
①当我们在上一次编辑文本的时候,如果系统奔溃了,或者异常关机,就会导致多出一个.swp的文件。
②还有另外一种情况就是,我们编辑文本的时候,还有另外一个程序在编辑同一个文本。那么就会出现这个报错,如图所示:
解决方法:
我遇到的是第一种情况,解决方法是找到这个.swp文件,然后把它删除即可。
①查找.swp文件
查找这个文本可输入一下命令:ls -a /xxx(文件所在的路径)/*.swp
因为.swp是隐藏文件,所以需要用 -a 才能看得到
②删除该.swp文件
找到该文件后,我们只需要将其删除后,然后重新用vim打开目标文件即可,删除.swp文件的命令:rm -f /xxx(文件所在的路径)/xxx.swp(对应的swp文件)
PS: 第二种情况我没遇到过,我猜想应该是找到另一个正在编辑这个文本的程序,退出编辑即可。
如有错误的地方,请大家留言纠正,疏漏的地方,欢迎大家补充!