环境
系统:CentOs 7.4
Vim版本:7.4.1099
编辑模式
vim分为三种模式:
1.普通模式(Normal mode)
控制屏幕光标的移动
删除字符或行
复制、粘贴
查找文本
2.插入模式(Insert mode)
输入字符
在命令模式下的命令,作为普通字符被插入到光标当前位置
3.命令模式(Command uhne mode)
替换文本
保存文件
退出程序
模式转换:

vi启动后,进入普通模式
在普通模式下
输入键iIaAoO,进入插入模式
输入键:,进入命令模式
在插入模式下
输入键Esc,返回普通模式
在命令模式下
输入键Esc,返回普通模式
文件操作
vim + filename打开文件,如果文件不存在则会创建文件。
| :w | 保存文件 |
| :wq | 保存文件并退出 |
| :x | 功能与:wq相同 |
| :wq filename | 将保存在文件filename中,然后退出 |
| :x filename | 功能与:wq filename相同 |
| :q | 直接退出,如果未保存且修改会提示 |
| :q! | 不保存退出 |
| :ZZ | 有修改则保存退出,没有修改则直接退出 |
vim通过普通模式通过以下方式进入插入模式:
| i | 在当前光标所在位置插入 |
| a | 在当前光标所在位置的右边插入 |
| I | 在当前光标所在行的行首插入 |
| A | 在当前光标所在行的行尾插入 |
| o | 在当前行的下方插入一行 |
| O | 在当前行的上方插入一行 |
| r | 替换当前光标所在的一个字符 |
| R | 从当前位置开始替换,直到按下ESC为止 |
vim通过以下命令方式对光标进行移动:
| h | 光标向左移动 |
| j | 光标向下移动 |
| k | 光标向上移动 |
| l | 光标向右移动 |
| w | 光标向左移动一个单词 |
| b | 光标向右移动一个单词 |
快速移动的快捷键:
| 0 | 光标移动到行首 |
| ^ | 光标移动到行首的第一个非空格字符 |
| $ | 光标移动到行尾 |
| gg | 光标移动到文件的第一行 |
| G | 光标移动到文件的最后一行 |
| nG | 移动到第n行 |
| Ctrl + d | 光标向下移动半页 |
| Ctrl + u | 光标向上移动半页 |
| Ctrl + f | 光标向下移动一页 |
| Ctrl + b | 光标向上移动一页 |
| n<Enter> | 光标下移n行 |
vim通过以下方式进行删除:
| x | 删除当前光标位置处的字符 |
| X | 删除光标位置前一个字符 |
| nx | 向后删除n个字符 |
| dd | 删除当前行 |
| ndd | 向下删除n行 |
| dw | 删除当前光标位置处的单词 |
| yy | 复制当前行 |
| nyy | 复制当前光标所在行及下面n行 |
| p | 在当前行的后面粘贴 |
| P | 在当前行的前面粘贴 |
| J | 将两行连接成一行(删除当前行后面的回车) |
vim通过以下方式撤销命令:
| u | 撤销上一次操作 |
| Ctrl + r | 重新执行被撤销的操作 |
| . | 重复执行前一个动作 |
vim环境设置
| :set nu | 显示行号 |
| :set nonu | 取消显示行号 |
| :set autoindent | 设置自动缩进 |
| :set all | 显示目前所有环境参数设置值 |
| :nohl | 取消高亮 |
vim查找与替换
| /word | 从当前位置开始向后查找word,搜索范围是全文 |
| ?word | 从当前位置开始向前查找word,搜索范围是全文 |
| n | 当前搜索顺序的下一个 |
| N | 当前搜索顺序的上一个 |
| :s/word1/word2/[gc]或[g] | 将word1替换成word2,g表示在当前行进行全局替换,没有g时表示替换一次,gc表示替换前需要确认 |
| :%s/word1/word2/g | 在整个文件范围进行替换 |
| :n1,n2s/word1/word2/[gc] | n1、n2为数字,表示在第n1与n2行之间执行替换,n1可以是.,表示当前行,n2可以是$,表示文件的最后一行 |
3598

被折叠的 条评论
为什么被折叠?



