VI编辑器的使用

时间:2023-02-10 22:12:23

vi是Linux中最基本的编辑器。但vi编辑器在系统管理、服务器配置工作中永远都是无可替代的。

一、vi的三种模式

命令行模式:用户在用vi编辑文件时,最初进入的为该模式。可以进行复制、粘贴等操作。

插入模式:进行文件编辑,按ESC键可以回到命令行模式。

底行模式:光标位于屏幕的底行。可以进行文件的保存、退出、查找、替换、列出行号等。

二、vi模式切换

A/a:(Append)进入编辑状态,从当前光标之后的位置开始插入键盘输入的字符。

I/i:(Insert)进入编辑状态,从当前光标之后的位置开始插入键盘输入的字符。

O/o:(Open)进入编辑状态,并插入一新行,光标移到该新行的行首,以后键盘输入的字符将插入到光标位置。

ESC:进入命令状态。

三、vi命令

1、拷贝和粘贴

[N]x:(Expurgate)删除从光标位置开始的连续N个字符(并复制到编辑缓冲区)

[N]dd:(Delete)删除从光标位置开始的连续N行(并复制到编辑缓冲区)

[N]yy:(Yank)复制从光标位置开始的连续N行到编辑缓冲区。

p或P:(Put)从编辑缓冲区复制文本到当前光标位置(即粘贴)。

u:(Undo)取消上一次操作(即恢复功能)。

2、保存和退出

:q:(Quit)退出没有修改的文件(若文件被修改了而没有保存,则此命令无效)。

:q!:强制退出,且不保存修改过的部分。

:w:(Write)保存文件,但不退出。

:x:(Exit)保存文件并退出。

:w File:另存为File给出的文件名,不退出。

:r File:(Read)读入File指定的文件内容插入到光标位置。

3、vi光标命令

:N:移动光标到第N行。

1G:移动光标到文件的第一行。

G:移动光标到文件的最后一行

:set number:设置显示行号。

:set nonumber:取消显示行号。

4、vi查找和替换命令

/string 查找字符串。n继续查找。N反向继续查找。

利用:s 命令可以实现字符串的替换,例如:

:s/str1/str2/  将当前行第一个str1替换为str2。

:s/str1/str2/g  将当前行所有str1替换为str2。

:.,$ s/str1/str2/g 将当前行到最后一行所有的str1替换为str2。

:1,$ s/str1/str2/g  将第一行到最后一行所有的str1替换为str2。

:% s/str1/str2/g  将所有行的str1替换为str2。

5、vi复制和剪切

y0:将光标至行首的字符拷入剪贴板。

y$:将光标至行尾的字符拷入剪贴板。

d0:将光标至行首的字符剪切入剪贴板。

d$:将光标至行尾的字符剪切入剪贴板。

range y块复制,range表示范围,例如:

:110,119y

range d块剪切,range表示范围,例如:

:110,119d