vim下删除swp文件

几个选项的内涵
[O]pen Read-Only 只读的方式打开 (E)dit anyway 编辑模式打开,但是不会载入存盘的内容 (R)ecover 编辑模式打开并且加载暂存盘的内容(但是要记得删除那个隐藏文件,要不然还会出现上面的问题那种界面) (D)elete it 直接删除没有保存的内容了 (Q)uit 离开vim (A)bort 忽视这个问题

解决:

直接退出去
删除出现的这个swap文件就可以了
rm .backup.sh.swp

使用vi编辑器编辑文件时,经常会由于非正常退出而产生一个swp文件,以后每次进入时都会提示,非常麻烦。现将网上搜集的解决方法陈列于此:

swp文件产生原因分为:1.当你用多个程序编辑同一个文件时。

        2.非常规退出时。

通常最后的少量改动无法恢复. Vim会在你连续4秒不键入内容时跟磁盘同步一次, 或者是连续键入了200个字符之后. 这可以通过´updatetime´和´updatecount´两个选项来控制. 所以系统如果在有所改动之后但Vim还没有同步时发生了宕机, 那这一部分内容就无法恢复了。

第一种情况的话,为了避免同一个文件产生两个不同的版本 (vim中的原话),还是建议选择readonly为好。

第二种情况的话,你可以 用vim -r filename恢复,然后再把swp文件删除(rm .filename.swp)。

进一步学习: swap-filej 关于交换文件的位置和命名

      :preservej 手工刷新交换文件

       :swapnamej 查看原文件及其交换文件的名字

      ´updatecount´ 连续击键多少次后做一次同步

      ´updatetime´ 多长时间之后做一次同步

      ´swapsync´ 同步交换文件时是否同时做一次磁盘同步

      ´directory´ 列出存放交换文件的目录

      ´maxmem´ 尚未写入交换文件的内容所受的内存限制

      ´maxmemtot´ 同上, 但是针对所有文件

  • 11.1 * 基本恢复

在大多数情况下,恢复一个文件相当简单。假设你知道正在编辑的是哪个文件(并且硬盘

还能用)。可以用 “-r” 选项启动 Vim:

    vim -r help.txt
1

Vim 会读取交换文件(用于保存你的编辑数据的文件)并且提取原文的编辑碎片。如果一

切顺利,你会看到如下文字 (当然了,文件名会不一样):

    Using swap file ".help.txt.swp"
Original file "~/vim/runtime/doc/help.txt"
Recovery completed. You should check if everything is OK.
(You might want to write out this file under another name
and run diff with the original file to check for changes)
Delete the .swp file afterwards. (译者注:中文情况下是:
使用交换文件 ".help.txt.swp"
原文件 "~/vim/runtime/doc/help.txt"
恢复完成. 请确定一切正常.
(你可能想要把这个文件另存为别的文件名,
再执行 diff 与原文件比较以检查是否有改变)
之后可以删除交换文件。

123456789101112131415

为了安全起见,可以用另一个文件名保存这个文件:

    :write help.txt.recovered
1

可以把这个文件与原文件作一下比较,看看恢复的效果如何。这方面 Vimdiff 可以帮很大

的忙

如何使用vim的 diff

用 vimdiff 显示区别

有一种特殊的启动 Vim 的方法可以用来显示两个文件的区别。让我们打开一个 “main.c”

并插入一些字符。在设置了 ‘backup’ 选项的情况下保存这个文件,以便产生 “main.c~”

备份文件。

在命令行中输入如下命令:(不是在Vim中)

    vimdiff main.c~ main.c
1

Vim 会用垂直分割的方式打开两个文件。你只能看到你修改过的地方和上下几行的地方。

     VV                   VV
+-----------------------------------------+
|+ +--123 lines: /* a|+ +--123 lines: /* a| <- 折叠
| text | text |
| text | text |
| text | text |
| text | changed text | <- 修改过的行
| text | text |
| text | ------------------| <- 删除的行
| text | text |
| text | text |
| text | text |
|+ +--432 lines: text|+ +--432 lines: text| <- 折叠
| ~ | ~ |
| ~ | ~ |
|main.c~==============main.c==============|
| |
+-----------------------------------------+
123456789101112131415161718

(这幅图没有显示出加亮效果,可以使用 vimdiff 命令看到更好的效果)

那些没有修改的行会被折叠成一行,这称为 "关闭的折叠"(closed fold)。上图
1

中由 “<- 折起” 标记的行就是一个用一行表示123行的折叠。这些行在两个文件中完全

相同。

标记为 “<- 修改过的行” 被高亮显示,而增加的行被用另一种颜色表示。这可以

很清楚地表示出两个文件间的不同。

被删除的行在 main.c 窗口中用 “—” 显示,如图中用 “<- 删除的行” 标记的行。

这些字符并不是真的存在。它们只是用于填充 main.c,以便与另一个窗口对齐。

折 叠 栏

每个窗口在左边都有一个颜色略有不同的显示栏,图中标识为 “VV”。你会发现每个折叠

在那个位置都有一个加号。把鼠标移到那里并按左键可以打开那个折起,从而让你看到

里面的内容。

对于打开的折叠,折叠栏上会出现一个减号。如果你单击那个减号,折叠会被重新关

闭。

当然,这只能在你有鼠标的情况下使用。如果你没有,可以用 “zo” 打开一个折叠。

关闭使用 “zc”。

用 Vim 做 比 较

启动比较模式的另一种方法是从 Vim 内部开始:编辑 “main.c” 文件,然后分割窗口

显示区别:

    :edit main.c
:vertical diffsplit main.c
12

“:vertical” 命令使窗口用垂直的方式分割。如果你不写这个命令,结果会变成水平分

割。

如果你有一个当前文件的补丁或者 diff 文件,你可以有第三种方法启动比较模式:

先编辑这个文件,然后告诉 Vim 补丁文件的名称:

    :edit main.c
:vertical diffpatch main.c diff
12

警告:补丁文件中必须仅包括为一个目标文件所做的补丁,否则你可能会得到一大堆错

误信息。还可能有些你没打算打补丁的文件被打了补丁。

补丁功能只改变你内存中的文件,不会修改你硬盘上的文件(除非你决定写入改动)。

滚 屏 绑 定

当文件中有很多改动时,你可以用通常的方式滚动屏幕。Vim 会尽可能保持两个文件对

齐,以便你可以并排看到文件的区别。

如果暂时想关闭这个特性,使用如下命令:

    :set noscrollbind
1

跳 转 到 修 改 的 地 方

如果你通过某种方法取消了折叠功能,可能很难找到有改动的地方。使用如下命令可以跳

转到下一个修改点:

   ]c
1

反向跳转为:

    [c
1

加上一个个数前缀可以跳得更远。

消 除 差 异

你可以把文本从一个窗口移到另一个,并以此来消除差异,或者为其中一个文件中增加

几行。Vim 有时可能无法及时更新高亮显示。要修正这种问题,使用如下命令:

    :diffupdate
1

要消除差异,你可以把一个高亮显示的块从一个窗口移动到另一个窗口。以上面的

“main.c” 和 “main.c~” 为例,把光标移到左边的窗口,在另一个窗口中被删除的行

的位置,执行如下命令:

    :dp
1

这将把文字从左边拷到右边,从而消除两边的差异。”dp” 代表 “diff put”。

你也可以反过来做:把光标移到右边的窗口,移到被 “改动” 了的行上,然后执行

如下命令:

    :do
1

这把文本从左边拷到右边,从而消除差异。由于两个文件已经没有区别了,Vim 会把所有

文字全部折叠起来。”do” 代表 “diff obtain”。本来用 “dg” (diff get) 会更好。可是

它已经有另外的意思了 (“dgg” 删除从光标为止到首行的所有文本 )。

vim下删除swp文件的更多相关文章

  1. vim中利用swp文件进行恢复

    经常电脑因为没电或者强行关闭vim,会导致原文件没有保存, 这种情况下vim会自动保存一个.swp文件,需要恢复时, 使用vim -r filename 期中-r意思为recovery 恢复之后最好删 ...

  2. Vim中的swp文件,在vim非正常退出时,再次编辑会出问题

    vim中的swp即swap文件,在编辑文件时产生,它是隐藏文件,如果原文件名是data,那么swp文件名就是.data.swp.如果文件正常退出,则此文件自动删除.以下两种情况不会删除swp文件: V ...

  3. Websphere下删除某个文件(ibm-partialapp-delete.props)

    Websphere下删除某个文件(ibm-partialapp-delete.props)

  4. linux下删除大量文件提示参数过长解决办法

    linux下删除大量文件提示参数过长解决办法:在当前目录下rm -rf * 在linux中删除大量文件时,直接用rm会出现:-bash: /bin/rm: 参数列表过长的错误. 这时可以用find命令 ...

  5. Linux下删除的文件如何恢复

    Linux下删除的文件如何恢复 参考自: [1]linux下误操作删除文件如何恢复 [2]Linux实现删除撤回的方法 以/home/test.txt为例 1.df -T 文件夹 找到当前文件所在磁盘 ...

  6. Windows下删除.svn文件夹的最简易方法

    建立一个文本文件,取名为kill-svn-folders.reg(扩展名由txt改为reg),内容如下: Windows Registry Editor Version 5.00 [HKEY_LOCA ...

  7. windows 下删除.svn文件

    Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Folder\shell\DeleteSVN] @= ...

  8. linux下删除乱码文件、目录

    由于编码原因,在linux服务器上上传.创建中文文件或目录时,会产生乱码,如果想删除它,发现用rm命令是删除不了的 这种情况下,用find命令可以删除乱码的文件或目录. 首先进入乱码文件或目录所在的目 ...

  9. linux 下删除乱码文件-乾颐堂

    在linux下删除文件,遇到特殊字符是一件非常头疼的事情. 1. 如果文件名带 ‘-’ 或者‘--’这样的字符 删除办法为:rm -- 文件名 如文件名为:-pythontab.tgz 如果用普通方法 ...

  10. Windows下删除顽固文件夹

    参考链接: https://www.cnblogs.com/azbane/p/9808802.html 第一步:修改当前文件夹所有者为管理员 takeown /f * /a /r 第二步:修改管理员权 ...

随机推荐

  1. 详解 & 0xff 的意义及作用

    首先我们要都知道, &表示按位与,只有两个位同时为1,才能得到1, 0x代表16进制数,0xff表示的数二进制1111 1111 占一个字节.和其进行&操作的数,最低8位,不会发生变化 ...

  2. ABC 314

    F 每次相当于创建一个包含 \(p_i,q_i\) 各自所在集合的点的大点 \(u\),然后 \(u\) 向 \(p_i,q_i\) 各自所在集合连边,边权就是胜率. 连完之后求每个点到根结点(\(\ ...

  3. NC50390 布局 Layout

    题目链接 题目 题目描述 FJ有N头奶牛 \((2 \leq N \leq1000)\) ,编号为 \(1 \ldots N\) .奶牛们将按照编号顺序排成一列队伍(可能有多头奶牛在同一位置上).换句 ...

  4. springboot 实现拦截的 3 种方式介绍及异步执行的思考

    springboot 拦截方式 实际项目中,我们经常需要输出请求参数,响应结果,方法耗时,统一的权限校验等. 本文首先为大家介绍 HTTP 请求中三种常见的拦截实现,并且比较一下其中的差异. (1)基 ...

  5. Android自动化测试框架uiautomator2详解

    1 uiautomator2 简介 ​ uiautomator2 是 一种 Android 自动化测试框架,提供了点击.长按.输入文本.滑动.拖拽.截屏等方法,能够模拟用户的各种动作.用户可以通过控件 ...

  6. Nginx开启gzip提升访问效率

    说明 最近网站考虑开启gzip压缩试试效果,gzip是nginx服务器的ngx_http_gzip_module模块提供的在线实时数据压缩功能. 通过开启gzip功能,可对服务器响应的数据进行压缩处理 ...

  7. 解决linux下zip文件解压后中文乱码问题

    最近项目上碰到在windows上压缩了一些图片,图片文件名称都是中文的,scp到linux下用unzip解压后文件名 全是乱码,找了半天解决方案,下面这个亲测可行,特记录一下,与大家分享: 原因: 由 ...

  8. P4141 消失之物题解(写给每一位与我一样的新手玩家)

    消失之物 传送门: P4141 消失之物 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn) 思路 暴力稳了 但是 hack tle了 这时候我们要想办法优化 这是一个回退背包问题 首先 ...

  9. Go微服务框架go-kratos实战学习08:负载均衡基本使用

    微服务框架 go-kratos 中负载均衡使用 一.介绍 在前面这篇文章 负载均衡和它的算法介绍,讲了什么是负载均衡以及作用.算法介绍. go-kratos 的负载均衡主要接口是 Selector,它 ...

  10. [BUUCTF][WEB][极客大挑战 2019]Upload 1

    打开靶机url,看到一个页面可以上传文件 上传一个图片试一下,发现上传的路径是 http://a7661b03-4852-41de-9ea4-d48c47cb50f0.node4.buuoj.cn:8 ...