一、文本编辑器的作用
维护或修改文本文件
维护Linux系统中的各种配置文件
二、Linux中常用的文件编辑器
vi:类UNIX操作系统的默认文本编辑器
vim:vim是vi编辑器(一般简称为vi编辑器)的增强内容
三、vim编辑器
基本格式:
vim 选项 文件
系统最小化安装vim
yum install vim -y
常用选项
| 选项 | 解释 |
|---|---|
| +# | 打开文件后,让光标处于第#行的行首,+默认行尾 |
| +/PATTERN | 让光标处于第一个被PATTERN配置的行行首 |
| ! | 打开上一次文件 |
示例:
[root@localhost kervin24]# cp /etc/passwd ./ 复制到当前文件夹
[root@localhost kervin24]# ls
a aaa b c d passwd
[root@localhost kervin24]# vim +10 passwd 打开文件时直接跳到第10行

[root@localhost kervin24]# vim +/root passwd 高亮root

[root@localhost kervin24]#! vim passwd 打开上次文件
四、三种模式:
命令(普通/正常)模式: 移动光标,剪贴/粘贴文本
插入(编辑)模式 : 用于修改文本
末行模式 (扩展命令)模式: 保存,退出等操作

1、命令模式
1.1、光标移动
| 操作类型 | 操作键 | 功能 |
|---|---|---|
| 方向移动 | H J K L或上下左右键 | 上下左右 |
| 翻页 | Page Down或Ctrl+F | 下翻页 |
| Page up 或Ctrl+B | 上翻页 | |
| 行内快速跳转 | HOME键或 ^ 、数字0 | 跳至行首 |
| END键或$ | 跳至行尾 | |
| 行间快速跳转 | 1G或gg | 跳转文件的首行 |
| G | 跳转文件的尾行 |
定位跳转:
Ctrl+G 显示信息行
行数+G 跳转第一次Ctrl+G处

1.2、删除、复制、粘贴
| 操作类型 | 操作键 | 功能 |
|---|---|---|
| 删除 | x或Del | 删除光标处的单个字符 |
| dw | 删除至一个单词的末尾 | |
| dd | 删除当前光标所在行 | |
| #dd | 删除从光标所在行开始的#行内容 | |
| d^ | 删除当前光标之前到行首的所有字符(不含光标) | |
| d$ | 从当前光标删除到行尾(包含光标) | |
| 复制 | yy | 复制当前行整行的内容到剪贴板 |
| #yy | 复制从光标所在行开始的#行内容 | |
| 粘贴 | p | 将最后删除的内容置入光标之后,粘贴到光标位置处之前 |
| 替换 | r+字符 | 输入r+字符,替换所在位置字符 |
| ce+字符 | 从光标处更改直到单词末尾 | |
| c$+字符 | 从光标处更改直到行尾 | |
| R+字符 | 连续替换多个字符 |
d2w delete 2 word
dd 删除整行
2dd 删除两行

复制粘贴文本 
v 进入可视模式
移动光标位置
输入y复制文本
j$移动到下行末尾
输入p粘贴
1.3、文件内容查找(区别大小写)
| 操作键 | 功能 |
|---|---|
| /word | 从上而下在文件中查找字符串“word” |
| ?word | (逆向)从下而上在文件中查找字符串“word |
| n | 向下查找匹配字符串 |
| N | 向上查找匹配字符串 |
配对括号查找
定位)、]、}处
输入 % 匹配查找
1.4、撤销编辑及保存退出
| 操作键 | 功能 | |
|---|---|---|
| u | 撤销最后执行的命令,多次输入,多次撤销 | |
| U | 撤销对整行的命令 | |
| ZZ | 保存当前的文件内容并退出vi编辑器 |

2、插入模式
| 命令 | 功能 |
|---|---|
| i | 光标前插入文本 |
| a | 光标后插入文本 |
| A | 行末尾插入文本 |
| o | 光标下行插入文本 |
| O | 光标上行插入文本 |
3、末行模式
3.1、保存文件及退出vi编辑器
| 功能 | 命令 | 备注 |
|---|---|---|
| 保存文件 | :w | 保存修改的内容 |
| : w /root/newfile | 另存为其他文件 | |
| 退出vi | : q | 未修改退出 |
| : q! | 放弃修改并退出 | |
| 保存文件退出vi | :wq或x | 保存修改的内容并退出 |
| 行号显示 | :set nu | 在编辑器中显示行号 |
| :set nonu | 取消编辑器中显示行号 | |
3.2、打开新文件或读入其他文件内容
| 命令 | 功能 |
|---|---|
| :e ~/install.log | 打开新的文件进行编辑 |
| : r /etc/filesystems | 在当前文件中读入其他文件的内容 |
3.3、替换命令
| 命令 | 功能 |
|---|---|
| :s/old/new | 只替换该行首个 |
| : s/old/new/g | 替换该行全部 |

3.4、在vim内执行外部命令
:!(+外部命令) 执行外部命令,按回车enter返回vim内部
3.5、一个有选择性的保存命令











