⇤ ← 于2008-09-02 20:06:01修订的的版本1
16
备注:
|
1479
|
删除的内容标记成这样。 | 加入的内容标记成这样。 |
行号 2: | 行号 2: |
=== 移动光标 === * k j h l 上下左右 * w 下一个单词开始 * 2w 下下个单词 * e 这个单词末尾 * 3e 第三个单词末尾 * $ 行尾 * ^或0 行首 * Ctrl-g 显示当前位置 * G 文件末尾 * gg 文件开始 * 123G 第123行 * Ctrl-o 回到前一个位置 * ctrl-i 回到后一个位置 === 插入 === * i 在当前字符前插入 * a 在当前字符后插入 * A 在行尾插入 * o 插入一行 * <ESC> 退回普通模式 === 删除 === * x 删除一个字符 * dw 删除到下个单词开始 * d2w 删除两个单词 * de 删除到这个单词末尾 * d$ 删除到行尾 * dd 删除整行 * 2dd 删除2行 === 修改 === * r 替换一个字符 * ce或cw 替换到单词末尾 * c$ 替换到行尾 * c2w 替换2个单词 === 查找 === * / 向后查找 * ? 向前查找 * n 继续查找 * N 反向继续查找 * % 查找匹配的括号 * :s/old/new 将这一行中的一个old字符串替换成new。 * :s/old/new/g 将这一行中所有old字符串替换成new。 * :%s/old/new/g 将文件内所有old字符串替换成new。 * :%s/old/new/gc 将文件内所有old字符串替换成new,每次替换前提示确认。 * :#,#s/old/new/g 将文件中某两行间的old字符串替换成new。 === 恢复 === * u undo * U 整行修改undo * Ctrl-R redo * p 插入删除的内容 === 文件 === * :q! 不保存退出 * :wq 保存退出 |
vi命令
1. 移动光标
- k j h l 上下左右
- w 下一个单词开始
- 2w 下下个单词
- e 这个单词末尾
- 3e 第三个单词末尾
- $ 行尾
- ^或0 行首
- Ctrl-g 显示当前位置
- G 文件末尾
- gg 文件开始
- 123G 第123行
- Ctrl-o 回到前一个位置
- ctrl-i 回到后一个位置
2. 插入
- i 在当前字符前插入
- a 在当前字符后插入
- A 在行尾插入
- o 插入一行
<ESC> 退回普通模式
3. 删除
- x 删除一个字符
- dw 删除到下个单词开始
- d2w 删除两个单词
- de 删除到这个单词末尾
- d$ 删除到行尾
- dd 删除整行
- 2dd 删除2行
4. 修改
- r 替换一个字符
- ce或cw 替换到单词末尾
- c$ 替换到行尾
- c2w 替换2个单词
5. 查找
- / 向后查找
- ? 向前查找
- n 继续查找
- N 反向继续查找
- % 查找匹配的括号
- :s/old/new 将这一行中的一个old字符串替换成new。
- :s/old/new/g 将这一行中所有old字符串替换成new。
- :%s/old/new/g 将文件内所有old字符串替换成new。
- :%s/old/new/gc 将文件内所有old字符串替换成new,每次替换前提示确认。
- :#,#s/old/new/g 将文件中某两行间的old字符串替换成new。
6. 恢复
- u undo
- U 整行修改undo
- Ctrl-R redo
- p 插入删除的内容
7. 文件
- :q! 不保存退出
- :wq 保存退出