①vi编辑器是linux系统下最最基本和最常用的标准文本编辑器。
②vi编辑器有三种工作模式:普通模式、编辑模式、命令模式。
从命令行切换到编辑模式,i、a、o
i 为从目前光标所在处输入, I 为在目前所在行的第一个非空格符处开始输入。
a 为从目前光标所在的下一个字符处开始输入, A 为从光标所在行的最后一个字符处开始输入。
o英文字母 。o 为在目前光标所在的下一行处输入新的一行; O 为在目前光标所在处的上一行输入新的一行。
命令行模式下的常用命令
dd 删除游标所在的那一整行
ndd n 为数字。删除光标所在的向下 n 行,例如 20dd 则是删除 20 行
d1G 删除光标所在到第一行的所有数据
dG 删除光标所在到最后一行的所有数据
yy 复制游标所在的那一行
nyy n 为数字。复制光标所在的向下 n 行,例如 20yy 则是复制 20 行
p 为将已复制的数据在光标下一行贴上
u 复原前一个动作,相当于撤销。
Ctrl+r 重复做上一个动作。
Shift+g 输入行号(120),按Shift+g,跳转到指定行(跳到120行)
gg 跳到文本首行
shift + g 跳到文本最后一行
Shift+4 跳到光标所在的行尾
Shift+6 跳到光标所在的行首
Shift+D 删除当前行
可以看: vim快速上手-头脑风暴图
③普通模式下的键盘输入任何字符都是当作命令来执行的,也可以输入命令进行光标的移动,字符、单词、行的复制、粘帖以及删除等操作。
按Esc键,再输入":"冒号,进入底线命令模式。
:wq 保存文件并退出
:wq! 强制保存退出
:q! 强制退出
:w 保存文件
:set nu 显示行号
:set nonu 为取消行号
:w [filename] 将编辑的数据储存成另一个文件(类似另存新档)
/name 向光标之下寻找一个名称为 name的字符串
?name 向光标之上寻找一个字符串名称为 name 的字符串。
:n1,n2s/word1/word2/g n1 与 n2 为数字。在第 n1 与 n2 行之间寻找 word1 这个字符串,并用word2替代word1 。
:1,$s/word1/word2/g 从第一行到最后一行寻找 word1 字符串,并用word2替代word1 。
:1,$s/word1/word2/gc 从第一行到最后一行寻找 word1 字符串,并用word2替代word1 。且在取代前显示提示字符给用户确认 (confirm) 是否需要取代。
可以看 vim常用指令图
④编辑模式主要用于文本的输入。在该模式下,用户输入的任何字符都被作为文件的内容保存起来。
⑤命令模式下,用户可以对文件进行一些如字符串查找、替换、显示行号等操作还是必须要进入命令模式的。
⑥在普通模式下输入冒号即可进入命令模式,此时vi窗口的状态行会显示出冒号,等待用户输入命令。“i”插入模式,即可以进行编辑。用户输入完成后,按【Esc】之后编辑器又返回到普通模式下,在命令模式下,保存退出,可以使用的命令为wq和x。前面加!表示强制退出,强制保存等。