vi的常用键盘操作

vi是一个很好用的工具,简单快捷,而且可以全键盘操作, vi还可以配合ctags和cscope,成为看代码的神器。如果想继续深入,推荐看<learning vi>
以下是本人常用的一些基本命令。

基本文件操作:
w : 保存
wa: 全部保存并退出
q : 退出
qa : 全部退出
q! : 不保存退出
e : 打开文件
tabe : 用标签打开文件

基本编辑:
i : 插入到后面
o : 在下面增加一行开始编辑
ESC : 退出编辑
u : 撤回操作
ctrl+r : 恢复撤回的操作
ctrl+v : 块操作

移动:
j : 往下一行
k : 往上一行
h : 往左一个字符
l : 往右一个字符
b : 往前一个单词
e : 往后一个单词
10+e : 往后移动10个单词(此处只是举例,前面的10可以替换为任何数字)
1+g : 到第一行
<n> + g: 到第<n>行
ctrl+a : 下翻一页
ctrl+b: 上翻一页
shift+g: 到最后一行
% : 找到配对的括号
$ : 到当前的行尾
^ : 到当前的行首
[[ : 跳到当前函数的函数名
][ : 跳到当前函数的最后一行
m+a : 记录当前行并把当前行放入a寄存器; ` + a : 跳转到a寄存器记录的行

查找:
* : 高亮当前的单词并查找下一个
# : 高亮当前的单词并查找上一个
n : 下一个
N : 上一个
/text: 搜索下一个"text"
/\.text : 搜索下一个".text"(.是通配符,需要加上\把通配符转为字符)
?text: 搜索上一个"text"
?\.text : 搜索上一个".text"(.是通配符,需要加上\把通配符转为字符)

替换:
:%s/text/change/ : 将每一行的第一个text替换为change
:%s/text/change/g : 将每一行的每一个text替换为change

记录一个动作并且重复,分为四个步骤执行:
1. q+0 : 将后面的动作记录到0寄存器中
2. 执行一些动作: 比如移动到行首,删除一个字符,再往下
3. q : 结束记录
4. ctrl+s+20+@+0: 执行20次0寄存器中的操作,即执行20次第2部中记录的操作


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值