Vi visual interface bill joy,S.U.N sparc sunos(solaris)
Vim:vi improved
模式化编辑器:
编辑模式(命令模式):---->默认的工作模式
末行模式:---->
输入模式(插入模式):---->
替换模式:---->
可视化模式:---->
① Vi / vim的打开方式:
1. Vi / vim的界面
2.vim file:file存在,则打开并将光标默认设置在第一行第一个字符
File不存在,则以新文件的方式打开,若保存,则文件被创建:若不保存,文件消失
3. Vim +# file:指定在打开文件的时候,将光标定位在第#行行首,如果定位的行数比整个文档的行还要大,则光标停留在最后一行的行首
4. Vim + file:直接将光标定位在文档的最后一行行首
5. Vim + /PATTERN/:打开文件,并且将光标定位至首次被PATTERN匹配的行的行首位置,即只完成首次匹配
② vim的关闭方式
末行模式的关闭:
:q 直接关闭vim编辑器,不保存修改内容
:q! 强制退出但不予保存
:w 保存修改的内容
:wq 保存修改的内容并关闭vim编辑器
:wq! 对于root来说,一些只读文件的修改可以强制保存并退出
:w! 强制保存
编辑模式的关闭
ZZ 保存并退出
ZQ 不保存退出
③ 在vim的编辑模式中,移动光标
1. 逐字符移动
(1.) ARROW
(2.) H:光标向左
J:光标向下
K: 光标向上
L: 光标向右
2. 逐字移动
W:将光标移动到下一个字的字首(两个单词之间有空格算一个字)
E:将光标移动到下一个字的字尾
B:将光标移动到上一个字的字首
3. 行内跳转
0:绝对行首 :将光标停留行首位置
^: 相对行首 :将光标停留在非空白字符行首位置
$: 绝对行尾 :将光标停留在行尾位置
4.行间跳转
#G:直接将光标移动到#行
G:直接将光标移动到文档的最后一行
gg:直接将光标移动到第一行行首
5.末行模式中光标移动
:# 直接将光标移动到第#行
:$ 直接将光标移动到最后一行
:1 直接将光标移动到第一行
④ 翻屏
Ctrl + f:向下翻一屏
Ctrl + b:向上翻一屏
Ctrl + d:向下翻半屏
Ctrl + u:向上翻半屏
⑤ 逐字符删除
x:删除光标所在位置的单个字符
X:删除光标所在位置左侧的单个字符
⑥ 编辑模式中的万能删除命令
d:删除光标经过的所有内容
dd:删除光标所在行
dh,dj,dk,dl,darrow,dw,de,dgg,dG
在末行模式下:
:d:删除光标所在行
:#d:删除第#行
:m,+nd:删除从第m行开始,在经过n行的所有行
:m,nd:删除从第m行开始到第n行结束的所有行
.:表示光标当前所在行
$:文档的最后一行
.,$ : 从光标所在行到文档的最后一行
⑦ 编辑模式中的万能粘贴命令
P(小写):向右向下进行粘贴
P(大写):向左向上进行粘贴
⑧ 编辑模式中万能复制命令
y:复制光标经过的所有内容(用法与d命令相同。)
yy:复制光标所在行
⑨ 模式的切换
1. 从编辑模式到末行模式:
:输入命令
/和? 进行查找,n和N,n表示顺寻查找,N表示逆序查找
/:自上而下
?:自下而上
2. 从末行模式到编辑模式
Esc键
Enter键
Backspace键
3. 从编辑模式到输入模式
I:将光标移动至行首进入输入模式
i:在光标所在位置的前面插入信息
A:将光标移动至行尾并进行输入模式
a:在光标所在位置的后面插入字符
O:在光标所在行的上面插入新行
o:在光标所在行的下面插入新行
cc:删除整行内容之后,进入输入模式
C:从光标所在位置删除至行尾,进入输入模式
s:删除光标所在位置一个字符,进入输入模式
S:删除整行内容之后,进入输入模式
4. 从输入模式到编辑模式
Esc键
5. 从编辑模式到替换模式
R:进入替换模式
6. 从替换模式到编辑模式
Esc键
7. 从编辑模式到可视化模式
v:按照字符为单位进行矩形选取
V:按照以行为单位进行矩形选取
在选取之后可以执行复制或删除的操作
只要完成操作,就返回编辑模式
所有的模式切换必须经由编辑模式,两种非编辑模式之间无法切换
⑩ 替换命令
r:替换光标所在位置的一个字符
⑩① 撤销编辑操作
u:撤销一次前的编辑操作
Ctrl + r:撤销最近的一次撤销操作
⑩② 重复之前的一次编辑操作
.:重复之前的一次编辑操作
⑩③ 特殊的末行命令
1. 显示和取消行编号:
set nonumber ---> set nu(取消显示编号)
set number ---> :set nonu(显示编号)
2. 开启或关闭字符大小写:
:set ignorecase ---> :set ic(开启)
:set noignorecase ---> :set noic(关闭)
3. 开启或关闭自动缩进功能:、
:set autoindet ---> : set ai(开启)
:set noautoindet ---> : set noai(关闭)
4. 开启或关闭查找高亮显示:
:set hlsearch (开启)
:set nohlsearch ---> :noai(关闭)
5. 开启或关闭语法着色
:syntax on(开启)
:syntax off(关闭)
⑩④ : vimtutor
⑩⑤ : 内容替换