共计 1908 个字符,预计需要花费 5 分钟才能阅读完成。
编辑过程
回顾上次
vi
能够加各种参数vi +4 oeasy.txt
vi +/shiyanlou
vi +%s/shiyanlou/oeasy/g oeasy.txt
vi
能够接管stdin
的参数ls -lah | vi -
vi
还有各种模式- 命令行模式
ex oeasy.txt
或者vi -e oeasy.txt
- 只读模式
vi -R oeasy.txt
或者view oeasy.txt
- 命令行模式
- 如果加一个
-r
的参数能够么 - 帮忙手册说的
swap
是什么意思?🤔
查看手册
- 什么不会查什么
- 咱们进入
vim
查问:h swap
- 看到编辑文件的过程
编辑过程
- 进入
Code
文件夹 间接关上
vi
- 并输出一些字符
- 这个时候所有的编辑内容都在
内存
- 如果
vim
过程完结,什么都会隐没
w oeasy.txt
- 把内存外面的货色放进硬盘
- 而后
持续编辑
- 批改后的内容首先保留在内存
- 而后被写入一个
oeasy.txt
的swap
替换文件
能够
:sw
- 看到这个替换文件的名字
- 叫做
.oeasy.txt.swp
- 结尾的
.
意味着 此文件为暗藏文件 - 两头是
oeasy.txt
原始文件的名字 - 前面是
.swp
意味着是swap
替换文件
复原文件
- 咱们能够间接完结
terminal
- 而后再开一个
terminal
- 运行
ls -lah *oeasy*
- 能够看到两个文件
- 一个是最后
:w
时保留的文件 - 另一个是在内存主动保留的
.swp 交换文件
再次关上
- 咱们运行
vi oeasy.txt
能够抉择
- O 只读
E 间接编辑, 疏忽
.oeasy.txt.swp
- 如果这个时候持续编辑
- 新的
swp
替换文件,命名为swo
- 是降序的一个法则
- 直到
ssa
- 能够通过
:sw
看到 - 也能够
ls -lah
看到
R 间接读取
.oeasy.txt.swp
并关上- 这个时候进去之后,
:w
才把swap
文件存储于oeasy.txt
- 这个时候进去之后,
D 删除交换文件
- 这个要小心,间接就把交换文件删掉了
- Q 退出
- A 终止
复原文件
复原文件能够有很多办法
vi oeasy.txt
时抉择 Recover- 或者
vi -r oeasy.txt
或者
E
进入原始文件之后运行命令:rec
- 如果以后文件有批改
- 运行之后要求保留以后地位文件
:w
保留文件后,并不会把批改保留到.swp
文件中- 如果有多个
swp
交换文件会让你选 - 留神批改日期
另存与追加
另存
:saveas oeasy.txt
- 以后 buffer 另存为其余文件
追加
:w >> o2z.txt
- 把以后 buffer 追加写入其余文件
应用专门文件夹
- 默认替换文件都在源文件同一文件夹
能够从新设置一个新文件夹吗?
:set dir=/temp/vim
配置专门的替换文件夹有什么益处吗?
- 放在不同的硬盘,防灾
- 缩小对于原始文件的文件夹进行净化
- 能够写在
~/.vimrc
中,每次都主动设置
更多细节
:nos(wapfile)
- 能够让以后文件不必
swap
文件
- 能够让以后文件不必
swap
文件更新的触发条件更新文字数
:set updatecount=300
- 如果编辑文字达到
updatecount
- 就会更新
swap
文件 - 默认是
200
更新间隔时间
:set updatetime=10
- 如果编辑文字时长达到
updatetime
- 就会更新
swap
文件 - 默认是
4000
毫秒
:preserver
强行更新swap
文件
设置备份
vim
个别没有产生备份文件如果你想要有个备份文件
:set backup
备份文件名
- 备份的缺省文件默认是在文件名前面加~
- oeasy.txt~ 就是备份文件
如果你想要设置备份文件的扩展名
:set backupext=.bak
备份地位
- 默认就在原地备份
如果你想指定一个地位
:set backupdir=/tmp/backup
- 如果无奈生成备份文件是因为没有文件夹
!mkdir /tmp/backup
写备份
设置
写备份 writebackup
- 如果
:set nobackup
- 并且
:set writebackup
- vim 也会备份一个备份文件
- 然而只有你对源文件
:w
了之后 - 备份就会隐没
- 次要是怕写的过程中源文件隐没
- 如果
- 目前这些都能够通过 版本控制工具
git
来解决
总结
- 咱们这次理解了编辑过程
默认有一个替换文件 swap
批改的内容会保留到一个
swap
文件- 如果
swp
曾经存在 - 会有个
swo
文件 - 以此类推
- 如果
- 替换文件能够进行对源文件的修复
- 没保留到源文件的可能保留到了替换文件
- 能够对立设置替换文件的地位
能够管制保留替换文件的触发条件
- 字符数
- 工夫长度
- 手动触发
还能够设置备份文件
- 备份文件 backup
- 写备份文件 writebackup
- 其实咱们更常见的是另存为命令进行备份
- 目前
vim
都是关上繁多文件 vim
能够关上两个文件吗?🤔- 下次再说 👋
[Github 地址] (https://github.com/overmind19…)
[Gitee 地址] (https://gitee.com/overmind198…)
[蓝桥实验楼 邀请码 FJWYIMGB] (https://www.lanqiao.cn/course…)
正文完