打开文件
- vi a 打开a文件默认定位第一行
- vi +5 a 默认定位到第5行
- vi + a 默认定位到最后一行
光标移动w/b/dd/yw/yy/p…
- w 跳到下一个单词词首
- b 跳到上一个单词词首
- e 跳到下一个单词词尾
- h 向左移动
- j 向下移动
- k 向上移动
- l 向右移动
- 0 跳到行首
- ^ 第一个非空白字符
- $ 行尾
- G 最后一行
- 3G第3行
- gg文章开头
- ctrl +b/f 翻屏
- x 删除光标所在位置字符
- 3x 删除光标开始3个字符
- r 替换光标位置字符
- dd 删除一行
- dw删除一个单词
- yw复制一个单词
- yy复制一行
- p在后方或者下方粘贴
- P在前方或者上方粘贴
- u撤销
- ctrl+r恢复
- .重复上一次操作
编辑模式到输入模式的互换及保存
1.编辑——>输入:
- i 当前光标前方
- a当前光标后方
- o当前光标下方新建一行
- O当前光标上方新建一行
- A当前光标行尾
2.输入——>编辑:
- Esc
3.保存
在输入模式——>编辑模式——>末行模式(“:”)
- w ——保存
- wq——保存并退出
- q ——退出
- q!——不保存并退出
- w!——强行保存
- Shift+zz——保存并退出
末行模式操作 !执行命令等
- set nu 显示行号
- set nonu 不显示行号
- set readonly 设置只读模式
- / 向下查找
- ?向上查找
- ! 执行命令
- s/str1/str2/gi 将整行忽略大小写的str1改成str2 g-整行 i-忽略大小写
- %s/str1/str2 将全文的str1改成str2
替换范围:
n 行号
. 当前光标行
+n便宜n行 - 0,%d 删除全文
- 1,3d删除1-3行
- $-1d删除最后一行
- 1,$-1d只保留最后一行