vi使用方法整理

$vi file
使用Escape键返回命令模式。
0   跳到一行的开始
$   跳到一行的结束
n+ 向下跳n行
n-  向上跳n行
H  移到屏幕最上面一行
M :光标移至屏幕中间行
L   移到屏幕最下面一行
G   跳到文件最后一行
:set nu/nonu  显示/隐藏行号
:xx  达到xx行

屏幕翻滚类命令
Ctrl+u:向文件首翻半屏
Ctrl+d:向文件尾翻半屏
Ctrl+f:向文件尾翻一屏
Ctrl+b;向文件首翻一屏
nz:将第n行滚至屏幕顶部,不指定n时将当前行滚至屏幕顶部

yy  把当前行放入缓冲区。nyy把当前行开始的n行放入缓冲区
p   将缓冲区内容取到光标后面(所在行的下面一行)
P   将缓冲区内容取到光标前面(所在行的上面一行)

u   恢复上一次的修改。
x(X)删除光标所在的字符;nx删除光标所在字符开始的n个字符;删除内容放入缓冲区;x删除光标后的,而X删除光标前的
dd 删除光标所在行;ndd删除光标所在行开始的n行;删除内容放入缓冲区
:first,last d 删除first行到last行;删除内容放入缓冲区
D   删除光标所在行光标后面的内容
J    把下一行内容加到本行行尾
do:删至行首
d$:删至行尾

r:替换当前字符(为输入r之后输入的字符)
R:替换当前字符及其后的字符(为输入r之后输入的字符),直至按ESC键
i    在光标之前开始输入文本
a   在光标之后开始输入文本
o   在光标所在行后插入一空行
O   在光标所在行前插入一空行
:first,last copy dest  拷贝first到last行的内容插入到dest行下面
:first,last move dest  移动first到last行的内容插入到dest行下面
:r filename 读入文件filename的内容插入到光标所在行的下面

:s/int/long/ 替换当前行的第一个int为long
:s/int/long/g 替换当前行的所有int为long
:s@long/int@int/long@g 使用@作为分隔符;替换当前行所有long/int为int/long
:first[,last]s/int/long 替换first行[到last行];first/last为.表示当前行,$表示最后一行
:%s/int/long 替换所有行

:w   回写修改后的文件。
:w   filename 当filename不存在时,把修改后的文件存为文件filename。当文件filename存在时,报错
:q    退出vi,若用户对编辑的文件有所修改,系统不会让用户使用q命令退出。
:q!   退出vi而不管是否对文件有改动。
:wq 保存对文件的修改并退出vi
:sh  启动sh,从sh中返回可用exit或ctrl+d
/string 向前搜索string   n 查找下一个匹配的字符串
?string 向后搜索string   n 查找下一个匹配的字符串


 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值