vi/vim的区别:
macos
1)相同:都是多模式编辑器vim
2)不一样:vim是vi的升级版本,不只兼容vi的全部指令,并且还有一些新的特性在里面,例如语法加亮,可视化操做不只能够在终端运行,也能够运行于x window、macos、windows。c#
vi的常见模式:windows
1)命令行模式编辑器
控制屏幕上光标的移动,字符、字或行的删除,移动复制某区段及进入Insert mode下,或者到last line modeide
2)插入模式spa
只有在插入模式下,才能够进行文字的输入,按ESC键可回到命令行模式命令行
3)底行模式3d
将文件保存或退出vim,也能够设置编辑环境等。blog
vim的基本操做:
1)在系统提示符号输入文件名后,就进入vim全屏编辑画面
注意:你在进入vim后,是处于命令行模式的,你须要切换到插入模式才可以输入文字。
2)与插入模式之间进行切换
在命令行模式下按一哈[i]或者[a]或者[o]进入插入模式,这时候就能够进行输入文字了。若当时在插入模式,想要回到命令行模式,按ESC键可回到命令行模式。
3)退出vim及保存文件
在命令行模式下,按冒号(:)进入底行模式
:w 保存当前文件
:wq 保存并退出
:q 退出
4)命令行模式功能键
一、插入模式
按「i」切换进入插入模式「insert mode」,按“i”进入插入模式后是从光标当前位置开始输入文件;
按「a」进入插入模式后,是从目前光标所在位置的下一个位置开始输入文字;
按「o」进入插入模式后,是插入新的一行,从行首开始输入文字。
二、从插入模式切换为命令行模式
按ESC键
三、移动光标
vi能够直接用键盘上的光标来上下左右移动,但正规的vim是用小写英文字母h、j、k、l,分别来控制光标的左、下、上、右移一格。
按「ctrl」+「b」:屏幕往“后”移动一页。
按「ctrl」+「f」:屏幕往“前”移动一页。
按「ctrl」+「u」:屏幕往“后”移动半页。
按「ctrl」+「d」:屏幕往“前”移动半页。
按G :移动到文章的最后
按 $ :移动到光标所在行的“行尾”
按 ^ :移动到光标所在行的“行首”
按 w :光标跳到下一个字的开头
按 e :光标跳到下一个字的字尾
按「b」:光标回到上个字的开头
按「#l」:光标移到该行的第#个位置,如:5l,56l。
按[gg]:进入到文本开始
按[shift+g]:进入文本末端
四、删除文字
「x」:每按一次,删除光标所在位置的一个字符。
「#x」:例如,「3x」表示删除光标所在位置的“后面(包含本身在内)”3个字符。
「X」:大写的X,每按次,删除光标所在位置的“前面”一个字符。
「#X」:例如,「20X」表示删除光标所在位置的“前面”20个字符。
「dd」:删除光标所在行。
「#dd」:从光标所在行开始删除#行
五、复制
「yw」:将光标所在之处到字尾的字符复制到缓冲区中。
「#yw」:复制#个字到缓冲区
「yy」:复制光标所在行到缓冲区。
「#yy」:例如,「6yy」表示拷贝从光标所在的该行“往下数”6行文字。
「p」:将缓冲区内的字符贴到光标所在位置。注意:全部与“y”有关 的复制命令都必须与“p”配合才能完成复制与粘贴功能。
六、替换
「r」:替换光标所在处的字符。
「R」:替换光标所到之处的字符,直到按下「ESC」键为止。
七、撤销上一次操做
「u」:若是您误执行一个命令,能够立刻按下「u」,回到上一个操做。按屡次“u”能够执行屡次回复。
八、 更改
「cw」:更改光标所在处的字到字尾处
「c#w」:例如,「c3w」表示更改3个字
九、跳至指定的行
「ctrl」+「g」列出光标所在行的行号。
「#G」:例如,「15G」,表示移动光标至文章的第15行行首。
5)底行模式下命令简介:
进入底行模式前,请先记住按ESC键肯定您已经处于命令行模式,在冒号(:)便可进入底行模式。
一、列出行号
「set nu」:输入「set nu」后,会在文件中的每一行前面列出行号
二、跳至文件中的某一行
「#」:「#」号表示一个数字,在冒号后输入一个数字,再按回车键 就会跳到该行了,如输入数字9,再回车,就会跳到文章的第9行。
三、查找字符
「/关键字」:先按「/」键,再输入您想寻找的字符,若是第一次找的关键字不是您想要的,能够一直按「n」会日后寻找到您要的关键字为止(注:此种查找是向下查找)
「?关键字」:先按「?」键,再输入您想寻找的字符,若是第一次找的关键字不是您想要的,能够一直按「n」会往前寻找到您要的关键字为(注:此种查找是向上查找)
四、保存、退出文件(同前)