Linux基本命令之vi
vi编辑器是Linux系统下标准的编辑器,vim则是vi的增强版,vim具有程序编辑能量力,可以主动的以字体颜色辨别语法的正确性,方便程序设计
以下是vi/vim的键位图:

首先介绍vi / vim 的三种模式 :
命令模式(Command mode)
输入模式(Insert mode)
底线命令模式(Last line mode)
常用输入命令:
| 命令 | 意义 |
|---|---|
| i & I | 进入输入模式(Insert mode):i 为『从目前光标所在处输入』, I 为『在目前所在行的第一个非空格符处开始输入』。 (常用) |
| a & A | 进入输入模式(Insert mode):a 为『从目前光标所在的下一个字符处开始输入』, A 为『从光标所在行的最后一个字符处开始输入』。(常用) |
| o & O | 进入输入模式(Insert mode):这是英文字母 o 的大小写。o 为『在目前光标所在的下一行处输入新的一行』; O 为在目前光标所在处的上一行输入新的一行!(常用) |
| r & R | r:替换当前字符 ,R:替换当前字符及其后的字符,直至按ESC键 |
| s & S | s:从当前光标位置处开始,以输入的文本替代指定数目的字符 S:删除指定数目的行,并以所输入文本代替之 |
常用命令行命令:
| 命令 | 意义 |
|---|---|
| x | 删除光标所在字符 |
| dd | 命令模式下 删除光标所在 行 并且自动下一行上移 |
| d0 & d$ | 以光标所在位置为准,d0删除至行首,d$删除至行尾 |
| D | 命令行模式下 删除光标所在 行 ,不自动上移下一行 |
| v | 命令行模式下 选中文本中内容,主要进行复制,粘贴 删除操作 |
| yy | 复制游标所在的那一行(常用) |
| u | 返回上一次操作(命令行模式下) |
| n&N | 在命令行模式下,n向下搜索,N向上搜索 |
| shift+6 | 在命令行模式下,光标快速移动到当前行的首字 |
| shift+4 | 在命令行模式下,光标快速移动到当前行的末端 |
| shift+0 | 命令行模式下,光标快速移动当当前段的末端 |
| p和P | p 为将已复制的数据在光标下一行贴上,P 则为贴在游标上一行! 举例来说,我目前光标在第 20 行,且已经复制了 10 行数据。则按下 p 后, 那 10 行数据会贴在原本的 20 行之后,亦即由 21 行开始贴。如果是按下 P, 那么原本的第 20 行会被推到变成 30 行。 (常用) |
| Ctrl+u | 向文件首翻半屏 |
| ctrl+d | 向文件尾翻半屏 |
| ctrl+f | 向文件尾翻一屏 |
| ctrl+b | 向文件首翻一屏 |
| nz | 将第n行滚至屏幕顶部,不指定n时将当前行滚至屏幕顶部。 |
常用底线命令模式命令:
| 命令 | 意义 |
|---|---|
| shift+: | 进入底线命令模式 |
| shift+:+/+word | 进入底线命令模式,使用/word 来寻找名为 word的字符串 |
| noh | 取消高亮 |
| q | 退出 |
| q! | 强制退出 |
| w | 保存 |
| wq | 保存退出 |
| x | 保存并退出,但不修改文件改动时间 |
拓展:同时编辑2个文件,并且将文件1的内容复制到文件2当中:
vi file1 file2
yy 在文件1的光标处拷贝所在行
:n 切换到文件2 (n=next)
p 在文件2的光标所在处粘贴所拷贝的行
:n 切换回文件1
首先使用vi 创建并打开一个 文件 test.sh
vi test.sh
进入文本界面:


按 小写的 i 即可进入insert (输入模式),

按 ESC 键盘左上角那个 即可退出 输入模式 进入 命令行模式, 在命令行模式 按下shift+:(英文冒号) 进入底线命令模式

浙公网安备 33010602011771号