vim编辑器未正常关闭时解决方案

问题描述

  • 在mac上的/etc目录下修改hosts文件时,进入vim编辑器时未正常关闭,导致在/etc下产生.hosts.swp文件,并且在/var/tmp下产生host.swo、host.swn等文件。因此在对/etc/hosts进行编辑时会报类似的提示:

    Swap file ".hosts.swp" already exists!
    [O]pen Read-Only, (E)dit anyway, (R)ecover, (Q)uit, (A)bort:

    选择任意选项后正常退出后,下次进入依次会报这些提示。

.swp、.swo文件产生原因

  • 在vim编辑器的模式下,打开某个文件例如/etc/hosts,vim会自动产生一个类似于.hosts.swp文件以备不测。正常退出的话,该文件(.swp)会自动删除。
  • 如果在.hosts.swp已经存在的情况下,即在A窗口打开该hosts文件后,使用B窗口同时打开该hosts文件,则会产生.swp文件,在使用C窗口打开该文件,产生.swo文件。字母排序逆时针倒序排列。

解决方案

  • 可以使用如下命令恢复文件

    #切换到/etc目录下
    cd /etc
    #使用 vim -r 文件名 恢复该文件
    vim -r hosts
    #恢复后如果确定该文件已经修改好,并且用不到.swp文件来恢复主文件的话,对.swp文件进行删除
    #之后输入密码即可删除 不加sudo可能会报“Permission denied” 权限不够的异常。
    sudo rm -rf .hosts.swp
    #之后的.swo、.swn等文件在/var/tmp下,切换到该目录,全部删除即可。
    cd /var/tmp
    sudo rm -f host.*
  • 执行操作后,再次进入编辑hosts文件时,就没有那些烦人的提示信息了。

后记

hosts文件

  • Hosts是一个没有扩展名的系统文件,可以用记事本等工具打开,其作用就是将一些常用的网址域名与其对应的IP地址建立一个关联“数据库”,负责将主机名映射到相应的IP地址。

  • 当用户在浏览器中输入可登录的网址时,系统首先从Hosts文件中寻找对应的IP地址,

    • 找到,系统会立即打开对应网页。
    • 没有找到,则系统再会将网址提交DNS域名解析服务器进行IP地址的解析。
  • 路径

    • windows系统

      C:\Windows\System32\drivers\etc
    • mac和linux系统

      /etc/hosts

sudo命令小记

  • sudo命令用来以其他身份来执行命令,其中默认的身份为root。

  • /etc/sudoers中设置了可执行sudo指令的用户。用户使用sudo时,必须先输入密码,之后有5分钟的有效期限,超过期限则必须重新输入密码。详情可看这里

  • 切换到/etc下可以查看文件

    cd /etc
    sudo cat sudoers

原创不易,欢迎转载,转载时请注明出处,谢谢!

作者:潇~萧下

原文链接:https://www.cnblogs.com/manongxiao/p/11735253.html

vim编辑器未正常关闭时解决方案的更多相关文章

  1. ant design Modal关闭时清除数据的解决方案

    背景:modal组件关闭时不清除数据,原来输入的数据还存在 解决方案: 1.modal的api:destroyOnClose 2.手动控制modal的销毁 this.state = { destroy ...

  2. Ubuntu使用vim编辑器时出现上下左右键变成ABCD

    今天在配置安装php时,要打开配置文件做些修改,肯定是要使用到vim编辑器的,我按照之前的使用命令之类的,在用到上下左右键时居然出现了ABCD,这我就纳闷了,难道Ubuntu的vim编辑器和别的不一样 ...

  3. vim 编辑器的设置

    vi编辑器的配置:http://blog.mcuol.com/User/fenghua/Article/17411_1.htm ******************************vim ~/ ...

  4. 【Linux 操作系统】vim编辑器配置及常用命令

    最近工作不安分, 没有了刚入行时候的锐气, 不知道什么时候开始懈怠起来, 周末在电脑旁边看新闻, 搞笑图片, 追美剧, 一坐就是一天, 很是空虚. 我需要摆脱这种状态, 正好想学习一下安卓底层, An ...

  5. 定制你自己的vim编辑器

    今天定制了一下自己的vim编辑器,效果嘛,谁用谁知道!话不多说,直奔主题.vim编辑器的配置都在/etc/vimrc文件中. #vim /etc/vimrc 打开配置文件,在尾部添加如下的,不是全都必 ...

  6. Linux上vim编辑器缩进的设置(方便如书写python代码)

    因为刚刚安装了Ubuntu虚拟机,知乎大神推荐用VIM编辑器,然后发现在Python缩进上不方便,查了点资料,整理出来,以便自己以后忘了还可以再看看. 第一步: 打开终端,在终端上输入 vim ~/. ...

  7. 安卓程序代写 网上程序代写[原]vim编辑器配置及常用命令

    最近工作不安分, 没有了刚入行时候的锐气, 不知道什么时候开始懈怠起来, 周末在电脑旁边看新闻, 搞笑图片, 追美剧, 一坐就是一天, 很是空虚. 我需要摆脱这种状态, 正好想学习一下安卓底层, An ...

  8. centos vim编辑器 第八节课

    centos  vim编辑器  第八节课 其他编辑器: nanogeditemacs 腾讯云上的vim版本~ VIM - Vi IMproved ~ ~ version 7.4.629 ~ by Br ...

  9. Vim编辑器基本操作学习(一)

      最近在服务端编辑文件总不可避免要使用vim编辑器,下面就对学习到的常用命令进行总结,以便自己以后查看.   基本编辑命令   删除字符:x 删除一行:dd 删除换行符:J,同时将两行合并成一行 撤 ...

随机推荐

  1. selenium高级应用 - 结束Windows中浏览器的进程

    结束Windows中浏览器的进程 #-*- coding:utf-8 #结束Windows中浏览器的进程 from selenium import webdriver import unittest ...

  2. BZOJ 1009 [HNOI2008]GT考试(矩阵快速幂优化DP+KMP)

    题意: 求长度为n的不含长为m的指定子串的字符串的个数 1s, n<=1e9, m<=50 思路: 长见识了.. 设那个指定子串为s f[i][j]表示长度为i的字符串(其中后j个字符与s ...

  3. c语言小游戏-扫雷的完成

    C语言-扫雷游戏 本文将对此游戏做一个大致的概述,此代码适合初学者,编写软件使用了vs2017. 该代码可以实现如下功能: 1.用户可以选择3个难度,分别布置不同个数的雷. 2.随机数设置雷的位置. ...

  4. C++:重载前置++/--返回引用,重载后置++/--返回临时对象

    标准库中iterator对++/--的重载代码如下: _Myiter& operator++() { // preincrement ++*(_Mybase *)this; return (* ...

  5. kali重置root密码

    像这样,kali系统的root密码忘记了,只需一分钟时间,快速重置root密码 第一步: 电脑开机后kali系统会进入引导界面,这是我们只需 “e” 进入启动前编辑命令(若系统没有出现这个页面,大家在 ...

  6. golang 自定义结构体(与其他语言对象类似)

    /* 结构体变量: 结构体的定义只是一种内存布局的描述,只有当结构体实例化时,才会真正地分配内存, 因此必须在定义结构体并实例化后才能使用结构体的字段. type 类型名 struct { 字段1 字 ...

  7. 记一次MySQL中Waiting for table metadata lock的解决方法

    最近项目中的数据库查询经常挂起,应用程序启动后也报操作超时.测试人员就说数据库又挂了(貌似他们眼中的连接失败,查询无果都是挂了),通过 show processlist 一看,满屏都是 Waiting ...

  8. Mysql 在线新建或重做主从

    1. 前言 以前给 Mysql 数据库做主从,都是在主服务器停服的情况下做的.但是最近有一个项目,已经上线几天了,数据库也单服务器跑了几天,才确定要给 Mysql 服务器做一个主从架构,简单的一主一从 ...

  9. light oj 1014 - Ifter Party分解因子

    1014 - Ifter Party   I have an Ifter party at the 5th day of Ramadan for the contestants. For this r ...

  10. React之深入了解虚拟DOM

    JS在手机中也可运行,React Native通过将虚拟DOM转换为底层的原生组件,即可在手机端运行,在浏览器运行时,只需要将虚拟DOM转换为真实DOM即可运行,虚拟DOM就是将真实DOM转换为JS对 ...