vim_1">1.vi与vim
在 Linux 的世界中, 绝大部分的配置文件都是以 ASCII 的纯文本形态存在, 因此利用简单的文字编辑软件就能够修改设置了。
vim 是 vi 的进阶版本, vim 可以用颜色或底线等方式来显示一些特殊的信息。vim 里面加入了很多额外的功能, 例如支持正则表达式的搜寻架构、 多文件编辑、 区块复制等等 。
2.vi的使用
基本上 vi 共分为三种模式, 分别是“一般指令模式”、 “编辑模式”与“命令行命令模式”。
vim_7">3.vim的暂存盘
vim和vi在操作上是没有什么区别的,但vim相比于vi有一个暂存盘的功能。
当我们在使用 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 就能够发挥救援的功能了。
[root@CentOS7 tmp]# rm -rf /tmp/*
[root@CentOS7 tmp]# touch file
[root@CentOS7 tmp]# vim file
不要关闭vim的编辑界面,在另一个终端显示文件。
[root@CentOS7 tmp]# ls -a
. .esd-1000 .file.swp .ICE-unix .X0-lock .XIM-unix
.. file .font-unix .Test-unix .X11-unix
从上面可以看到,除了file文件,还有他的缓存文件.file.swp存在。
现在完成编辑:
[root@CentOS7 tmp]# vim file
[root@CentOS7 tmp]# ls -a
. .esd-1000 .font-unix .Test-unix .X11-unix
.. file .ICE-unix .X0-lock .XIM-unix
从上面可以看到,.file.swp文件消失了。
下面在编辑过程中关闭终端,看一下如何通过swp文件来恢复:
再次用vim编辑时出现如下页面:
直接按R就可以恢复了。
Tips:恢复之后,swp文件并不会消失,所以下次编辑文件的时候又会遇到这个问题,所以恢复之后需要手动删除swp文件
vim_43">4.vim的使用注意事项
4.1编码问题
vim 里面怎么无法显示正常的中文啊? 其实这很有可能是因为编码的问题! 因为中文编码有 big5 与 utf8 两种, 如果你的文件是使用 big5 编码制作的, 但在 vim 的终端接口中你使用的是万国码( utf8) , 由于编码的不同, 你的中文文件内容当然就是一堆乱码了。
4.2 DOS与Linux的断行符
DOS ( Windows 系统) 创建的文件的特殊格式, 也可以发现在DOS 使用的断行字符为 ^M$ , 我们称为 CR 与 LF 两个符号。 而在 Linux 下面, 则是仅有LF ( $) 这个断行符号。
DOS文件与Linux文件的互转: