9.2.4 vim
的暂存档、救援回复与开启时的警告讯息
在目前主要的文书编辑软件都会有『回复』的功能,亦即当你的系统因为某些原因而导致类似当机的
情况时,
还可以透过某些特别的机制来让你½之前未储存的数据『救』回来!这就是鸟哥这里所谓
的『回复』功能啦!
那么
vim
有没有回复功能呢?有的!
vim
就是透过『暂存档』来救援的啦!
当我们在使用
vim
编辑时,
vim
会在与被编辑的文件的目录下,
再½立一个名为
.filename.swp
文件
比如说我们在上一个小½谈到的编辑
/tmp/vitest/man_db.conf
这个文件时,
vim
会主动的½
/tmp/vitest/.man_db.conf.swp
的暂存档,你对
man_db.conf
做的动作就会被记录到这
.man_db.conf.swp
当中喔!如果你的系统因为某些原因断线了,
导致你编辑的文件还没有储存,
这个时候
.man_db.conf.swp
就能够发挥救援的功能了!我们来测试一下吧!
底下的练习有些部分的
指令我们尚未谈到,没关系,你先照着做,后续再回来了½啰!
[dmtsai@study ~]$
cd /tmp/vitest
[dmtsai@study vitest]$
vim man_db.conf
#
时会½
入到
vim
面,
vim
的一般指令模式下按下『
[ctrl]
-
z
』的
[1]+ Stopped vim man_db.conf
<==
按下
[ctrl]
-
z
这个讯
当我们在
vim
的一般指令模式下按下
[ctrl]-z
的组合按键时,你的
vim
会被丢到背景去执行!
部份的功能我们会在
第十六章的程序管理
当中谈到,
你这里先知道一下即可。回到命令提示字符后,
½下来我们来模拟½
vim
的工作不正常的中断吧!
[dmtsai@study vitest]$
ls
-
al
drwxrwxr
-
x. 2 dmtsai dmtsai 69 Jul 6 23:54 .
drwxrwxrwt. 17 root root 4096 Jul 6 23:53 ..
-
rw
-
r
--
r
--
. 1 dmtsai dmtsai 4850 Jul 6 23:47 man_db.conf
-
rw
-
r
--
r
--
. 1 dmtsai dmtsai 16384 Jul 6 23:54
.man_db.conf.swp
<==
就是他,
-
rw
-
rw
-
r
--
. 1 dmtsai dmtsai 5442 Jul 6 23:35 man.test.config
[dmtsai@study vitest]$
kill
-
9 %1
<==
里仿真
断线
停止
vim
工作
[dmtsai@study vitest]$
ls
-
al .man_db.conf.swp
-
rw
-
r
--
r
--
. 1 dmtsai dmtsai 16384 Jul 6 23:54 .man_db.conf.swp
<==
档还
存在!
那个
kill
可以仿真½系统的
vim
工作删除的情况,你可以假装当机了啦!
由于
vim
的工作被不正
常的中断,导致暂存盘无法½由正常流程来½束,
所以暂存档就不会消失,而继续保留下来。
此时
如果你继续编辑那个
man_db.conf
,会出现什么情况呢?
会出现如下所示的状态喔:
[dmtsai@study vitest]$
vim
man_db.conf
E325: ATTENTION
<==
错误
Found a swap file by the name "
.man_db.conf.swp
"
<==
底下
明有
的存在
owned by: dmtsai dated: Mon Jul 6 23:54:16 2015