CentOS7中vi/vim编辑器的使用

vi编辑器是Linux系统下标准的编辑器.它有三种模式,分别是命令模式(command mode)、输入模式(Insert mode)和底线命令模式(last line mode).

一、模式:

1、命令行模式(command mode):用户刚刚启动 vi/vim,便进入了命令模式。

此状态下敲击键盘动作会被Vim识别为命令,而非输入字符。比如我们此时按下i,并不会输入一个字符,i被当作了一个命令。以下是常用的几个命令:

    i 切换到输入模式,以输入字符。 x 删除当前光标所在处的字符。 : 切换到底线命令模式,以在最底一行输入命令。

若想要编辑文本:启动Vim,进入了命令模式,按下i,切换到输入模式。

命令模式只有一些最基本的命令,因此仍要依靠底线命令模式输入更多命令。

2、输入模式(Insert mode):只有在Insert mode下,才可以做文字输入,按「ESC」键可回到命令行模式。在命令模式下按下i就进入了输入模式。在输入模式中,可以使用以下按键:

    字符按键以及Shift组合,输入字符 ENTER,回车键,换行 BACK SPACE,退格键,删除光标前一个字符 DEL,删除键,删除光标后一个字符 方向键,在文本中移动光标 HOME/END,移动光标到行首/行尾 Page Up/Page Down,上/下翻页 Insert,切换光标为输入/替换模式,光标将变成竖线/下划线 ESC,退出输入模式,切换到命令模式

3、底线命令模式(last line mode):在命令模式下按下 :(英文冒号)就进入了底线命令模式。底线命令模式可以输入单个或多个字符的命令,可用的命令非常多。

在底线命令模式中,基本的命令有(已经省略了冒号):

    q 退出程序 w 保存文件

按ESC键可随时退出底线命令模式。

二、操作:

1、新建一个文件

在文件不存在的情况下,通过vi + 文件路径+文件名(带后缀)可以创建一个空文件,通过键盘中输入iao(三个字母按随便一个就行)可以使文件进入编辑状态下,然后就可以在文件中写入有关的内容了。

示例:vi /etc/mysql/my.cnf

2、修改一个文件

与新建文件类似,只是需要文件是事先已经存在的,如果不知道当前目录下是否存在该文件,可以通过cd进入到那个目录,然后用ls列出目录下的所有文件确认一下。当文件确实存在时,通过键盘上的iao(三个字母随便选一个)进入文件编辑状态。

3、保存增加或修改

通过1或2步做了更改后,文件需要保存起来应该如何操作呢?在编辑状态下,按下键盘上ESC键可以退出编辑状态,然后在命令行中输入:wq就可以保存了。

4、出现.swp提示文件被占用不能保存时怎么办?

.swp就像平时我们遇到的word打开后产生的那个临时文件。重新打开一个终端使用 rm -rf .a.txt.swp 就可以删除.swp文件。这样再保存的时候就没有被占用的提示了。还有一种就是直接退出不保存,命令是::q!

经验分享 程序员 微信小程序 职场和发展