Linux下的Vi/Vim编辑器使用汇总
vi是Linux命令行界面下的文字编辑器,几乎所有的Linux系统都安装了vi;vim是vi命令的增强版本(Vi IMproved),完全兼容vi,同时提供了很多增强的功能。
vim/vi的三种模式:
- 普通模式:用vi命令打开一个文件,默认的状态就是普通模式
- 在普通模式上可以通过“上下左右”键来移动光标
- 也可以执行删除、复制、黏贴等工作
- 编辑模式:在普通模式下,只有按下“i,I,a,A,o,O,r,R,s,S”等字母才能进入相应的文字编辑模式
- 命令模式:在普通模式下,只有输入“:/?”才能进入命令模式,从而执行文件的保存、退出、搜索、替换、显示行号等相关操作
| 命 令 | 说 明 |
| 普通模式:移动光标的操作 | |
| G或者(shift+g) | 将光标移动到文件的最后一行 |
| gg | 将光标移动到文件的第一行,等价于1gg或者1G |
| 0 | 将光标从所在的位置移动到当前行的开头 |
| $ | 将光标从所在的位置移动到当前行的末尾 |
| n<Enter> | n为数字,<Enter>为回车键,将光标从当前行向下移动n行 |
| ngg | n为数字,将光标从当前行移动到文件的第n行。等价于nG |
| H | 光标移动到当前窗口的最上面一行 |
| M | 光标移动到当前窗口的中间行 |
| L | 光标移动到当前窗口的最下面一行 |
| h(←) | 光标向左移动一格 |
| j(↓) | 光标向下移动一格 |
| k(↑) | 光标向上移动一格 |
| l(→) | 光标向右移动一格 |
| 普通模式:搜索与替换 | |
| /string | 从光标所在的位置开始向下搜索"string"字符串 |
| ?string | 从光标所在的位置开始向上搜索"string"字符串 |
| n | 从光标的位置开始,向下重复前一个搜索动作 |
| N | 从光标的位置开始,向上重复前一个搜索动作 |
| :g/A/s//B/g | 将文件中符合A的字符串替换成B,"/"作为分隔符号可以使用"@|#"等代替 |
| :%s/A/B/g | |
| :n1,n2s/A/B/gc | n1,n2为数字,在第n1行和n2行之间寻找A并替换成B |
| 普通模式:复制、粘贴、删除等操作 | |
| yy/nyy | 复制一行/复制连续n行,n为数字 |
| p/P | 将已复制的数据粘贴到光标的下一行/将已复制的数据粘贴到光标的上一行 |
| dd/ndd | 删除一行/删除连续n行,n为数字 |
| u | 撤销前一个操作 |
| . | 重复前一个操作 |
| x | 向后删除字符 |
| X | 向前删除字符 |
| d1G | 删除当前行至第一行 |
| dG | 删除当前行至最后一行 |
| d0 | 删除当前光标位置到行首 |
| d$ | 删除当前光标位置到行尾 |
| 进入编辑模式命令 | |
| i/I | 在当前光标所在处插入文字/在当前所在行行首的第一个非空格符处进行插入 |
| a/A | 在当前光标所在的下一个字符处插入文件/在当前行的行尾的最后一个字符处进行插入 |
| o/O | 在当前行的下一行进行插入/在当前行的上一行进行插入 |
| Esc | 退出编辑模式 |
| 命令模式 | |
| :wq/:wq!/:q/:q! | 保存退出/强制保存退出/退出/强制退出 |
| :n1,n2 w filename | 将文件的n1行到n2行保存至文件filename |
| :n1,n2 co n3 | 将文件的n1行到n2行的内容拷贝到n3行以后 |
| :n1,n2 m n3 | 将文件的n1行到n2行的内容移动到n3行以后 |
| :!command | 在vi中执行sell命令 |
| :set nu/:set nonu | 显示行号/取消显示行号 |
浙公网安备 33010602011771号