文章目录
Linux文本编辑器–vi、vim
-
文本编辑器的作用
- 创建或修改文本文件
- 维护Linux系统中的各种配置文件
-
Linux中最常用的文本编辑器
- vi:类UNIX操作系统的默认文本编辑器
- vim:vim是vi文本编辑器(一般简称为vi编辑器)的增强版本
-
三种工作模式
- 命令模式、输入模式、末行模式
- 模式切换
- 命令模式:启动vi编辑器后默认进入命令模式,该模式中主要完成如光标移动、字符串查找,以及删除、复制、粘贴文件内容等相关操作
- 输入模式:该模式中主要的操作就是录入文件内容,可以对文本文件正文进行修改、或者添加新的内容。处于输入模式时,vi编辑器的最后一行会出现“-- INSERT --”的状态提示信息
- 末行模式:该模式中可以设置vi编辑环境、保存文件、退出编辑器,以及对文件内容进行查找、替换等操作。处于末行模式时,vi编辑器的最后一行会出现冒号“:”提示符
!vim 自动打开上一次编辑的文本文件
命令模式切换到输入模式
a:在当前光标位置之后插入内容
i:在当前光标位置之前插入内容
o:在光标所在行之下插入一个新行内容
O:在光标所在行之上插入一个新行内容
A:在所在行的行尾插入内容
I:在所在行的行首插入内容
操作类型 | 操作键 | 功能 |
---|---|---|
翻页移动 | Page Down键或 Ctrl+F Page Up键或 Ctrl+B | 向下翻动一整页内容 向上翻动一整页内容 |
行内快速跳转 | Home键或^键、数字 0键 End 键或$键 | 跳转到本行的行首 跳转到本行的行尾 |
行间快速跳转 | 1G 或 gg #G | 转到文件内容的第 1 行 跳转到文件中的第#行(其中“#”号用具体数字替换) |
G | 跳转到文件的最后一行 | |
M | 跳转至当前页的中间位置 | |
L | 跳转至当前页的行尾位置 | |
H | 条到当前页面的行首 | |
显示行号 | : set nu | 在编辑器中显示行号 |
: set nonu | 取消行号显示 | |
删除 | x或Delete键 | 删除光标处的单个字符 |
dd | 删除当前光标所在行(有剪切功能) | |
#dd | 删除从光标处开始的#行内容 | |
d^ | 删除当前光标之前到行首的所有字符 | |
d$ | 删除当前光标处到行尾的所有字符 | |
dw | 删除光标处的整个单词 | |
替换字符 | R 或 Shift+r | 替换当前光标处字符 |
复制 | yy | 复制当前行整行的内容到剪贴板 |
#yy | 复制从光标处开始的#行内容 | |
粘贴 | p(小写) | 粘贴到光标所在行之下 |
P(大写) | 粘贴到光标所在行之上 | |
查找 | /word | 从当前光标处开始向后进行查找字符串“word” |
?word | 从当前光标处开始向前进行查找 | |
n | 定位下一个匹配的被查找字符串 | |
N | 定位上一个匹配的被查找字符串 | |
撤销 | u(小写) | 按一次取消最近的一次操作;重复u键,恢复多步操作 |
U(大写) | 用于取消最后一次操作所在行所做的所有编辑 | |
Ctrl+R | 恢复撤销的操作 | |
保存退出 | :w | 保存修改的内容 |
:w 新文件名 | 另存为其它文件 | |
:q | 退出 | |
:q! | 放弃对文件内容的修改并退出 | |
ZZ(大写)或:wq、:x | 保存当前的文件内容并退出vi编辑器 | |
打开新文件 | :e 其它文件名 | 打开新的文件进行编辑 |
读入文件内容 | :r 其它文件名 | 在当前文件中读入其他文件内容 |
文件内容替换 | : s /old/new | 将当前行中查找到的第一个字符串“old” |
: s/old/new/g | 将当前行中查找到的所有字符串“old” 替换为“new” | |
:#,# s/old/new/g | 在行号“#,#”范围内替换所有的字符串“old”为“new” | |
:% s/old/new/g | 在整个文件范围内替换所有的字符串“old”为“new” | |
: s /old/new/c | 在替换命令末尾加入c命令,将对每个替换动作提示用户进行确认 | |
快速复制 | :8,11 m 4 | 将8-11行的内容剪切到第4行下面 |
:8,11 co 4 | 将8-11行的内容复制到第4行下面 |