vi和vim的操作手册

第一部分:一般模式
                            移动光标的方法

h左  光标向左移动一个字符
j下  光标向下移动一个字符
k上  光标向上移动一个字符
l右  光标向右移动一个字符
数字加上下左右可移移动多个


[ctrl]+[f]  屏幕向下移动一页
[ctrl]+[b]  屏幕向上移动一页
[ctrl]+[d]  屏幕向下移动半页
[ctrl]+[u]  屏幕向上移动半页


+   光标移动到非空格符的下一行
-   光标移动到非空格符的上一行
n<space>    n表示数字,数字加空格表示光标向后移动n个字符
0或[HOME]  这里是数字0,移动到这一行的最前面字符处
$或[END]   移动到这一行的最后面字符处
H   光标移动到这个屏幕最上方那一行的第一个字符
M   光标移动到这个屏幕中央那一行的第一个字符
L   光标移动到这个屏幕最下方那一行的第一个字符


G   移动到这个文件的最后一行
nG  n表示数字,移动到第n行
gg  移动到这个文件的第一行,相当于1G
N[Enter]    n表示数字,光标向下移动n行




                            查找与替换
/word   向下寻找一个名为word的字符串
?word   向上寻找一个名为word的字符串
n   重复前一个查找操作
N   反向进行前一个查找操作
:n1,n2s/word1/word2/g   n1和n2为数字,在第n1行与n2行之间寻找word1这个字符串,并替换成word2
:1,$s/word1/word2/g     从第一行到最后一行间把word1替换成word2
:1,$s/word1/word2/gc    从第一行到最后一行间把word1替换成word2,且在替换前显示提示字符给用户确认(confirm),将会出现提示replace with hehe (y/n/a/q/l/^E/^Y)?  y替换,n不替换,a替换所有,q放弃,l替换第一个并进入插入模式,^E和^Y是提示你用Ctrl+e或Ctrl+y来滚动屏幕的。




                            删除,复制与粘贴
x,X 在一行字当中x向后删除一个字符相当于[Del],X向前删除一个字符相当于[Backspace]
nx  n为数字,连续向后删除几个字符,X为向前删除几个字符
dd  删除光标所在的那一行
ndd n为数字,删除光标所在的向下n行
d1G 删除不标所在到第一行的所有数据
dG  删除光标所在到最后一行的所有数据
d$  删除光标所在处到该行的最后一个字符
d0  数字0,删除光标所在处到该行的最前面一个字符
yy  复制光标所在行
nyy n为数字,复制光标所在的向下n行
y1G 复制不标所在到第一行的所有数据
yG  复制光标所在到最后一行的所有数据
y0  复制0,删除光标所在处到该行的最前面一个字符
y$  复制光标所在处到该行的最后一个字符
p,P p为将已复制的数据在光标下一行粘贴,P为在光标上一行粘贴
                            移动光标的方法
J   将光标所在行与下一行合并成同一行
c   重复删除多个数据并切换成插入状态,例如向下删除10行,[10cj]
u   撤销,复原前一个操作 
[ctrl]+r    下一步,重做上一个操作
.   小数点,重复前一个操作




第二部分:一般模式切换到编辑模式的可用的按钮说明
i,I 进入插入模式,i为从目前光标处插入,I为在目前所在行的第一个非空格符处开始插入
a,A 进入插入模式,a为从目前光标所在的下一个字符处开始插入,A为从光标所在行的最后一个字符处开始插入
o,O 进入插入模式,o为从目前光标所在的下一行处插入新的一行,O为在目前光标所在处的上一行插入新的一行
r,R 进入替换模式,r只会替换光标所在的那一个字符一次,R会一直替换光标所在的文字,直到按下[Esc]为止
[Esc]   退出编辑模式回到一般模式




第三部分:一般模式切换到命令模式的可用的按钮说明
:w  将编辑的数据写入硬盘文件中
:w! 若文件属性为只读时,强制写入该文件,不过到底能不能写入还是跟你对该文件的文件权限有关
:q  离开
:q! 若曾修改过文件,又不想存储,使用"!"为强制离开不保存文件
:wq 保存后离开,若为:wq则为强制保存后离开
ZZ  若文件没有更改,则不保存离开,若文件已经被更改过,则保存后离开
:w[filename]    将编辑的数据保存成另一个文件
:r[filename]    在编辑的数据中,读入另一个文件的数据,即将"filename"这个文件的内容加载到光标所在行的后面
:n1,n2 w[filename]  将n1到n2的内容保存成filename这个文件
:! command  暂时离开vi到命令行模式下执行command的显示结果
:set nu     显示行号
:set nonu   与set nu相反,为取消行号
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值