vi/vim打开文件提示Found a swap file by the name

问题分析

有一次在远程连接主机时,用vi打开文件my.ini却提示:Found a swap file by the name ".my.ini.swp"。百度了下才知道,原来在使用vi或vim命令打开一个文件后,就会产生一个.(filename).swp的文件。如果编辑完成之后,正常退出,那么这个swp文件就会被自动删除。

而之前我在使用vi操作该文件时发生了异常中断(非正常退出),于是就在当前目录下生成了一个.my.ini.swp文件。在Linux中,以.开头的文件都是隐藏文件,可以通过使用ll -a或者ls -a来查看。

这种swp文件是隐藏文件,有两个作用:

  • 避免用多个程序编辑同一个文件时,产生两个不同的版本。
  • 非常规退出时,文件恢复。

解决方法

删除swp文件

只要将swp文件删除,就不会再出现这个提示。可以通过rm命令来删除该文件。

禁止生成swp文件

如果想要禁止生成swp文件,可以通过修改vim的配置文件来实现。新建一个~/.vimrc文件,在文件中添加一行代码:

set noswapfile

这样该配置就只会对当前用户生效,你也可以直接修改/etc/vimrc文件,效果是一样的。

通过swp文件来恢复文件

swp文件可以用来恢复文件,假如你有一个swp文件.my.ini.swp,可以通过以下命令来恢复:

vi -r my.ini

恢复文件之后可以把swp文件删除,不然每次打开my.ini文件时都会提示。

参考链接

  1. linux下vi操作Found a swap file by the name
  2. 非正常关闭vi编辑器时会生成一个.swp文件

原文地址:https://www.cnblogs.com/yulinlewis/p/10068184.html

时间: 2024-08-28 13:01:55

vi/vim打开文件提示Found a swap file by the name的相关文章

Ubuntu下配置Sublime到Dash board 以及 VI/VIM编辑文件时无权限保存的问题

[1]Ubuntu下配置Sublime到Dash board Ubuntu是个好系统,Sublime Text 是个好编辑器. 下载&安装 个人习惯喜欢到官网下载软件,http://www.sublimetext.com/2 选择合适的包下载回来的格式是.tar.bz2格式,需要进行解压. 1. 解压: tar -xvf Sublime\ Text\ 2.0.2.tar.bz2 2.为了在Terminal的任何位置都能执行./sublime_text文件,将解压后他的目录保存到环境变量$PATH

vim打开文件时显示行号

vim打开文件是,默认不提示行号. 至于显示行号的用途,因人而异 linux下一个主机可能有N个账户.对于配置分为两种:仅配置当前账户,配置所有账户 vim配置文件路径(Centos  5.5 final ):   /etc/vimrc 若当前账户目录下无vim配置文件,可以cp   /etc/vimrc至相应目录.cp后,使用chmod  改变文件的用户组和用户,并mv  vimrc  .vimrc,将文件设为隐藏文件 一.更改所有账户配置 直接更改/etc/vimrc vim   /etc/

Windows下Git Bash中VIM打开文件中文乱码

Windows下Git Bash中VIM打开文件中文乱码,解决方法是: 步骤一 [email protected] MINGW64 /d/项目GGE/Hard_for_GGE (master)$ cd /etc/ [email protected] MINGW64 /etc$ vi vimrc 步骤二 在打开的vimrc文件开头添加以下代码: set nu set fencs=utf-8,gbk,utf-16,utf-32,ucs-bom 保存并退出vimrc编辑文档. 步骤三 1.退出git

linux下vi或vim编辑文件时提示Found a swap file by the name的原因及解决方法

在linux下用vi或vim打开test.java文件时 [[email protected] test]# vi test.java 出现了如下信息: E325: ATTENTION     Found a swap file by the name ".test.java.swp"             owned by: root   dated: Wed Dec  7 13:52:56 2011         file name: /var/tmp/Test.java  

使用Vi/Vim给文件加密和解密

一. 利用vi加密: 优点:加密后,如果不知道密码,就看不到明文,包括root用户也看不了: 缺点:很明显让别人知道加密了,容易让别人把加密的文件破坏掉,包括内容破坏和删除: vi编辑器相信大家都很熟悉了吧,vi里有一个命令是给文件加密的,举个例子吧: 1) 首先在root主目录/root/下建立一个实验文件text.txt: [[email protected] ~]# vi text.txt 2) 进到编辑模式,输入完内容后按ESC,然后输入:X(注意是大写的X),回车: 3) 这时系统提示

vi命令-打开文件

1.打开文件 命令:vi +# 文件名 描述:打开文件并定位到第#行 示例:vi +2 1.txt 命令:vi + 文件名 描述:打开文件并定位到最后一行 示例:vi + 1.txt 命令:vi +/PATTERN 文件名 描述:打开文件并定位到与PATTERN第一次匹配的行首 示例:vi +/data 1.txt

Vi之打开文件,新建文件,保存文件

打开文件.新建文件.保存文件 vi 文件名 如果文件存在,输入结束后,:wq保存并退出文件 如果文件不存在,输入结束后,:wq就可以新建并保存文件 在编辑完成时,返回一般模式,1)输入:w则保存文件:如果已保存,输入:q则退出文件 2)输入:wq保存并退出 3)如果不想保存被修改的内容,则输入:q!则强制退出 进入编辑模式: i ( 在光标前插入文本) o (在当前行之下新开一行,并到行首)

linux vi/vim编辑文件显示行号

方法一(最尴尬的方法): 1.显示当前行行号,在VI的命令模式下输入 :nu 2.显示所有行号,在VI的命令模式下输入 :set nu #这是:set number 的简写 方法二(最好的方法): 使用vi编辑~/.vimrc文件,该文件不存在时会自动生成一个新文件,所以不用担心该文件是否存在,在该文件中加入一行"set nu",添加内容不含引号, 命令如下: [[email protected] ~]# vi ~/.vimrc #生成.vimrc文件,在第一行输入如下内容: set

vim打开文件中每行末尾都带有 ^M

为什么会出现^M? 1. 在windows下的文本文件的每一行结尾,都有一个回车('\n')和换行('\r') 2. 在linux下的文本文件的每一行结尾,只有一个回车('\n'); 3. 而在linux下打开windows编辑过的文件,就会在行末尾显示^M; 4. 注:^M在vim中为crtl+M 如何解决? 方法一 在vim命令行中输入 :%s/\r// %s/^M// #注意此处^M为crtl+M,不是字面上的^M 方法二 用dos2unix dos2unix filename 方法三 s