在一般模式下,通过如下i、a、o、r命令进入编辑模式,对文档内容进行编辑。命令的区别在于进入编辑模式后光标插入点不同。
命令 功能描述i 当前光标前
I 当前光标所在行行首
a 当前光标后
A 当前光标所在行行尾
o 当前光标下一行,新开一行
O 当前光标上一行,新开一行
r 当前光标之后,新输入会替换一个字符
R 替换当前光标之后的多个字符
四、命令模式
在一般模式下,可以通过以下三个命令:“:”、“/”、“?”进入底行命令模式完成文件保存、内容查找及字符替换功能。执行完命令可以通过ESC返回一般模式。
3.1 文件保存
语法格式
:[选项]+回车
选项分为w、q、!可以相互组合使用。
w:保存
q:退出
!:强制执行
案例
:w 保存
:w filename 文件另存为filename
:wq 保存并退出
:wq! 强制保存并退出
:wq! filename 文件另存为filename并退出编辑器
3.2 查找内容查找命令主要有2个:/或?二者功能一致,只记住一个即可
语法格式
/要查找的词+回车
?要查找的词+回车
如果用第一个语法/进行查询,则按n键向下查找下一个,shift+n向上查找下一个
第二个语法则相反,n向上查找上一个,shift+n向下查找下一个
案例
/heimatengyun 在当前文档中查找heimatengyun字符串
等价于
?heimatengyun
3.3 替换内容可以通过如下命令替换当前文档里的内容
语法格式
:[范围]s/要被替换的内容/新内容/[c,e,g,i]+回车
范围:1,5表示从第一行到第五行。1,$表示从第一行到最后一行,等价于%。%表示当前编辑的文章。
可组合选项:c表示confirm,每次替换前询问;e表示不显示error;g表示globe不询问整行替换;i表示ignore不区分大小写;I表示大小写敏感
案例
1,3s/you/YOU 在当前文档的1至3行搜索you并替换为YOU。注意不是单词替换,只要匹配就会替换,比如如果第二行存在your这个单词,则会被替换为YOUr
1,3s/you/YOU/c 替换前会询问是否要替换
s/e/E/g 替换当前行所有e为E。假设当前光标所在行内容为where are you from替换后变为hErE arE you from
3.4 显示行号 :set nu 显示行号
:set nonu 关闭行号
以上为vi编辑器基本的使用命令,多敲几次自然就记住了。至此我们已经学会使用vi编辑器,可以创建和管理各种文件了。下一篇文章将讲解linux常用的命令,学会命令后就可以制作各种脚本完成各种工作任务了。