vi编辑器
Posted joanna123
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了vi编辑器相关的知识,希望对你有一定的参考价值。
1.命令模式:直接vi filename刚进入的模式就是命令模式
2.底行模式:在命令模式按esc输入 : / ? 到达的模式就是底行模式.在底行模式按回车键回到命令模式
3.编辑模式:在命令模式按i a o任意一个进入的模式是编辑模式,在编辑模式按esc退回到命令模式
vi filename:新建文件打开或打开已有文件,光标停在首行
vi +n filename :打开文件 ,光标停留在第n行
vi -r filename:在上次使用vi编辑文件时发生系统崩溃,恢复文件
底行模式命令
:w:保存当前编辑内容 :wq:保存并退出vi编辑器 :q: 退出vi编辑器,如果文件已经更改未保存,则无法退出 :q!:强制退出不保存 :w!:强制保存 :w filename :文件另存为一个新文件 :w >>filename:把文件追加到另外一个文件
:1,$s/旧串/新串/g :底行模式 1开始位置 第一行,后面没有值表示全局
$s表示开始替换 /旧串表示替换前的值 /新串 表示替换后的值 g结束
:set nu 显示行号。 底行模式的命令。
:set nonu 不显示行号。 底行模式的命令。
:1,2co3 拷贝1,2行在3行之后 底行模式的命令。
:4,5m6 移动行4行5在行6之后。 底行模式的命令。
命令模式
a:在当前的右侧插入数据
dd:删除一行数据
dw:删除一个单词
5dd删除当前和下面的加起来5行
D:从光标处删除到行尾
ndw:删除n个字符
1,100d:从第一行删除到第100行,底行命令模式
x:光标处删除一直到按下esc键。
r:替换一个字符
yy:复制一行
p:粘贴
i :在光标处插入内容
I :在当前行首
a:在光标后插入内容
A:在当前行尾
o:在当前行之下插入内容
O:在当前行之上新开一行
r:替换当前字符
R:替换当前字符及其后的字符,直至按ESC键
s:从当前光标位置处开始,以输入的文本替代指定数目的字符 例:5s
S:替换光标所在的行
c:清除一个字符
cw:清除一个单词
J:把当前行和下一行连起来
u:撤销上一步操作
查找内容
底行模式下输入 /内容,按回车键
/pattern 从当行往下查找匹配字符 底行模式的命令
?pattern 从当前往上查找匹配字符 底行模式的命令
非底行模式命令
输入k在当前行向上查找行号 输入回车在当前行向下查找行号
输入n在当前行向上或者向下查找对应值
输入G直接查找到文件最后一个匹配到的地方
以上是关于vi编辑器的主要内容,如果未能解决你的问题,请参考以下文章