Dan*_*son 133
vim -r .swp
Run Code Online (Sandbox Code Playgroud)
这将进入恢复模式并为您提供更多信息。我想这就是你想要的。
.swX
如果包含未保存文件的会话被终止/崩溃/发生其他不好的事情,则会留下 -files。在 Vim 会话中打开未保存的缓冲区时,它们也会出现。vim -r
读取这些临时文件并重新创建内容。恢复后,只需像往常一样保存它,例如:w newfilename
.
小智 21
您无需拥有原始文件即可恢复 .swp。只需打开文件,就好像它存在一样。vim 将寻找扩展名为 .swp 的文件并提供恢复它。
例如:
$ ls -a
. .. .test.txt.swp
$ vim test.txt
[...]
Swap file ".test.txt.swp" already exists!
[O]pen Read-Only, (E)dit anyway, (R)ecover, (D)elete it, (Q)uit, (A)bort:
Run Code Online (Sandbox Code Playgroud)
只需按 R 即可恢复它并 :wq 文件
编辑:请注意,.swp 文件仅包含对文件所做的更改(请参阅注释)。这意味着您需要从备份中获取文件的最新副本,然后使用 vim 恢复最新的更改。如果您没有该文件的备份副本,那您真的很不走运。
在阅读了 Vegar Westerlund 和 Heptite 的评论后,我想知道 vim 在什么时候需要原始文件(或备份)从 .swp 文件中恢复。这是做了什么:
我打开了一个 975 行的文件,在第 949 行(创建.swp
文件)对其进行了编辑并终止了该进程,然后删除了原始文件。$ vim Original_File
询问我是否想从 .swp 中恢复 » > 是;实际上只恢复了前 68 行和后 34 行(从我的编辑上方的 8 行开始)。
然后我用较小的文件重复测试:从 20 到 200 行,.swp 文件包含100% 的原始内容。但是在 300 行时,.swp 中只包含前 68 行和最后 18 行(从我编辑的上方 2 行开始)。
总而言之,知道 vim 总是将文件的“标题”和“底部”保存在 .swp 文件中是件好事。也许有一个设置来控制 .swp 应该包含多少行?
归档时间: |
|
查看次数: |
109501 次 |
最近记录: |