文本编辑器vi命令

文本编辑器的作用:

创建或修改文本文件;维护Linux系统中的各种配置文件

Linux中最常用的文本编辑器:

vi:类unix操作系统的默认文本编辑器

vim:vim是vi文本编辑器(一般简称位vi编辑器)的增强版本

vi编辑器的工作模式

三种工作模式:命令模式、输入模式、末行模式

命令模式: 启动vi编辑器后默认进入命令模式。该模式中主要完成如光标移动、字符串查找,以及删除、复制、粘贴文件内容等相关操作。

输入模式:该模式中主要的操作就是录入文件内容,可以对文本文件正文进行修 改或添加新的内容。处于输入模式时, vi编辑器的最后一行会出现“--INSERT--"的状态提示信息。末行模式:该模式中可以设置vi编辑环境、保存文件、退出编辑器,以及对文件内容进行查找、替换等操作。处于末行模式时, vi编辑器的最后一行会出现冒号":"提示符。

命令模式、输入模式和末行模式是vi编辑环境的三种状态,通过不同的按键操作可以在不同的模式间进行切换。例如,从命令模式按: (冒号)键可以进入末行模式按a、i、o等键可以进入输入模式:在输入模式、末行模式均可按Esc键返回命令模式。

常见的几个模式切换键及其作用如下:

a:在当前光标位置之后插入内容。

A:在光标所在行的末尾(行尾)插入内容。

i:在当前光标位置之前插入内容。

I:在光标所在行的开头(行首)插入内容。

o:在光标所在行的后面插入一个新行。

O:在光标所在行的前面插入一个新行。

命令模式的基本操作

光标移动

方向移动          ←、→、↑、↓                  上、下、左、右

翻页                Page Down或Ctrl+F           向下翻动一整页内容翻页

                         Page Up或Ctrl+B            向上翻动一整页内容

行内快速跳转        Home键或“^" 、数字“0"            跳转至行首

                              End键或“$"键                        跳转到行尾

行间快速跳转          1G或者gg                            跳转到文件的首行

                                 G                                  跳转到文件的末尾行

                               #G                                跳转到文件中的第#行

行号显示                   set nu                           在编辑器中显示行号

                             set nonu                        取消编辑器中的行号显示

复制、粘贴、删除

删除                     x或Del                                 删除光标处的单个字符

                           dd                                         删除当前光标所在行

                           #dd                               删除从光标所在行开始的#行内容

                           d^                                 删除当前光标之前到行首的所有字符

                         d$                                 删除当前光标处到行尾的所有字符

复制                      уу                            复制当前行整行的内容到剪贴板

                                #yy                       复制从光标所在行开始的#行内容

粘贴                          P                        将缓冲区中的内容粘贴到光标位置处之后                 

                                  P                     粘贴到光标位置处之前删除复制粘贴

文件内容查找

/word                    从上而下在文件中查找字符串”word“

?word                   从上而下在文件中查找字符串”word“

n                              定位下一个匹配的被查找字符串

N                          定位上一个匹配的被查找字符串

撤销编辑及保存退出

u                      按一次取消最近的一次操作;重复u键,恢复多步操作

U                     用于取消对当前行所做的所以编辑

zz                    保存当前的文件内容并退出vi编辑器

末行模式的基本操作

保存文件及退出vi编辑器

保存文件           :w                   保存修改的内容

                        :w/root/newfile         另存为其他文件

退出vi                :q                          未修改退出

                         :q!                        放弃对文件内容的修改,并退出vi

保存文件退出vi     :wq或x                 保存修改的内容并退出 打开新文件或读入其他文件内容

:e~/install.log                     打开新的文件进行编辑

:r/etc/filesysrems                 正在当前文件中读入其他文件内容 文件内容替换

:s/old/new                        将当前行中查找的第一个字符”old“串替换为”new“

:s/old/new/g                         将当前行中查找到的所有字符串“old” 替换为“new”

:#,#s/old/new/g                  在行号“#,#”范围内替换所有的字符串“old”为 “new”

:%s/old/new/g                   在整个文件范围内替换所有的字符串“old”为“new”

:s/old/new/c                        在替换命令末尾加入c命令,将对每个替换动作提示用户进行确认