==========================
vi编辑器--visual interface[可视化接口]
==========================
1、命令行下的一种编辑器
+++++++++++
2、vi操作模式
+++++++++++
Command Mode 命令模式
Insert Mode 输入模式
Last Line Mode 末行模式
例题:
在当前目录下编辑1.txt
1> vi 文件名 (当使用vi打开一个不存在的文件,会自动创建)
【使用以上命令之后,属于命令模式】
2>按"i"进入到输入模式,开始输入内容
3>按esc 表示:切换到命令模式 -->然后按":" 进入到 末行模式
4>末行模式向输入 wq 即可完成保存并退出
w:表示写入
q:表示退出
总结:
命令模式---->输入模式 "i"
输入模式---->命令模式"esc"
命令模式---->末行模式 ":"
输入模式和末行模式不能切换
注意:
在命令模式下 set nu [vi会显示行号]
++++++++++++++++++
3、vi命令的格式
++++++++++++++++++
vi filename:
编辑某个文件
vi + filename:
打开某个文件,同时光标定位到最后一行
(默认情况下:使用vi打开文件时,光标定位当上一次最后的编辑的行数)
vi +n filename:
打开文件同时将光标定位到第n行
vi +/string filename:
①打开文件同时将光标定位到指定的string行上
②同时string会高亮[如果有多个string,则都高亮,并且光标定位到第一个string行上]
③当再次这样进入编辑时:
vi filename;
之前查询过的string还是会高亮
如果不想高亮,则可以这样解决:
1>cd ~:进入到自己的家
2>ls: 查看当前文件; 会有一个【.viminfo】文件,此文件记录了之前输入过的所有命令
3>rm -rf .viminfo:删除该文件
4>vi filename:此时进入,就会发现之前查询过的string就不会高亮了
vi filename1 filename2:
n:切换到下一文件
prev:切换到上一文件
①编辑多个文件
②步骤:
1>vi filename1 filename2 此时会编辑filename1[命令模式]
2>i进入输入模式; 进行对 filename1 的编辑
3>esc:进入命令模式
4>: 进入如末行模式
5>w :此时只要按w,写入filename1,不退出编辑器
6>n:切花值下一文件,此时为命令模式[重复2->5]
7>wq:写入filename2,并退出编辑器
================
4、快捷键
================
dd:删除光标定位的行
yy:赋值光标定位的行
p:复制单行到光标处
:q! 强制退出-->末行模式
===============
快速定位到哪行
===============
需要在末行模式
:set nu 显示行号
: n 定位到第n行
:D 定位到最后一行