1.文本编辑器的作用:
创建或修改文本文件;
维护Linux系统中的各种配置文件;
vim是vi文本编辑器的增强版本,可以自动检查语法错误。
2.vi编辑器的三种工作模式
!vi 执行上一次vi的指令(需要绝对路径)
3.vi编辑器中常用命令
vi编辑器的3种模式下的操作:
<1>命令模式 (打开文件默认命令模式)
^ :跳至行首 $:跳至行尾
1G或gg跳转到文件第一行 G跳转到文件最后一行 #G跳转到#行 M跳转到当前页中间
dd:删除一行(其实是剪切) dw:删除光标处整个单词 dd^删除到行首 dd$删除到行尾 #dd删除#行 x或Delete键删除光标处的单个字符
u:撤回
yy:复制当前光标处一行 #yy复制当前光标处开始的#行
P:小写的p,将复制的行粘贴在光标所在行的下一行
P:大写的p,将复制的行粘贴在光标所在行的上一行
x:删除光标所在处字符(按着不动,先删光标后面,在删前面) #常用
r:替换光标所在处字符
ZZ:保存退出 ##或者按shift +z+z
g: 按2次,光标移动到文本首行 补充:3gg:跳至第3行
G: 按1次,光标移动到文本末行
<2>输入模式 (i、I、a、A,就进入了编辑模式。退出编辑模式,按ESC退到命令模式)
a: 将在光标所在位置之后插入文本(append)
A: 将在光标所在行末插入文本
i: 将在光标所在位置之前插入文本(insert)
I: 将在光标所在行的第一个非空字符前插入文本
o: 将在光标所在行的下一行开始插入文本(open)
O: 将在光标所在行的上一行开始插入文本
<3>末行模式 (在命令模式中输入shift+冒号,就进入了末行模式。退出编辑模式,按ESC退到命令模式)
:q退出命令模式
:w保存修改内容
:wq保存退出
:q!不保存退出(强制)
:set nu显示行号 set nonu或set nu!去掉行号
:/abc查找abc这个字符,按n查找下一个,按N查找上一个
末行模式文件内容替换复制剪切
: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,每个替换动作提示用户确认
:8,11 m 4 将8-11行的内容剪切到第4行下面
:8,11 co 4 将8-11行的内容复制到第4行下面