VI编辑器
目录

一.工作模式
1.三种工作模式
命令模式:删除,跳转
输入模式:修改文本内容
末行模式:替换查找
2.优点
功能比较齐全
匹配的接口较多
方便
二.不同模式下切换

进入后首先进入命令模式只能经过命令模式,才能到末行模式或者输入模式,输入模式和末行模式不能直接转换
三.作用
创建或修改文本文件
维护Linux系统中的各种配置文件
四.常用文本编辑器
vi:类unix操作系统的默认文本编辑器
vim:是vi文本编辑器(一般简称为vi编辑器)的增强版本
1.命令模式下的基本操作
1)光标移动
| 操作类型 | 操作键 | 功能 |
| 方向移动 | 方向键 | 上、下、左、右 |
| 翻页 | Page Down或Ctrl+F | 向下翻动一整页内容 |
| Page Up或Ctrl+B | 向上翻动一整页内容 | |
| 行内快速跳转 | Home或^ 、数字0 | 跳转至行首 |
| End或$键 | 跳转至行尾 | |
| 行间快速跳转 |
1G或者gg |
跳转到文件首行 |
| G | 跳转到文件末行 | |
| #G | 跳转到文件中的第#行 |
2)复制、黏贴、删除
| 操作类型 | 操作键 | 功能 |
| 删除 | x或Del | 删除光标处的单个字符 |
| dd | 删除当前光标所在行 | |
| #dd | 删除从光标所在行开始的#行内容 | |
| d^ | 删除当前光标之前到行首的所有字符 | |
| d$ | 删除当前光标处到行尾的所有字符 | |
| 复制 | yy | 复制当前行整行的内容到剪贴板 |
| #yy | 复制从光标所在行开始的#行内容 | |
| 粘贴 | p | 将缓冲区中的内容粘贴到光标位置处之后 |
| P | 粘贴到光标位置处之前 |
3)文件内容查找
| 操作键 | 功能 |
| /word | 从上而下在文件中查找字符串“word" |
| ?word | 从下而上在文件中查找字符串“word" |
| n | 定位下一个匹配的被查找字符串 |
| N | 定位上一个匹配的被查找字符串 |
4)撤销编辑及保存退出
| 操作键 | 功能 |
| u | 按一次取消最近的一次操作;重复u键,恢复多步操作 |
| U | 用于取消对当前行所做的所有编辑 |
| ZZ | 保存当前的文件内容并退出vi编辑器 |
2. 末行模式的基本操作
1)保存文件及退出vi编辑器
| 功能 | 命令 | 备注 |
| 保存文件 | :w | 保存修改的内容 |
| :w/root/newfile | 另存为其它文件 | |
| 退出vi | :q | 未修改退出 |
| :q! | 放弃对文件内容的修改,并退出vi | |
| 保存文件退出vi | :wq或x | 保存修改的内容并退出 |
2)打开新文件或读入其他文件内容
| 命令 | 功能 |
| :e~/install.log | 打开新的文件进行编辑 |
| :r /etc/filesystems | 在当前文件中读入其他文件内容 |
3)文件内容替换
命令格式
查找范围(默认当前光标所在行)s(关键字查找)/ old(原来的内容)/new(替换的内容)/替换的范围
替换范围 g全部
| 命令 | 功能 |
| :s /old/new | 将当前行中查找到的第一个字符“old”串替换为“new" |
| :s /old/new/g | 将当前行中查找到的所有字符串“old”替换为“new" |
| :# , # s/old/new/g | 在行号“#,#”范围内替换所有的字符串“old”为“new" |
| :% s/old/new/g | 在整个文件范围内替换所有的字符串“old”为“new" |
| :s /old/new/c | 在替换命令末尾加入c命令,将对每个替换动作提示用户进 行确认 |
4)增加行号和去除行号
| 行号显示 | :set nu | 在编辑器中显示行号 |
| :set nonu | 取消在编辑器中的行号显示 |
3.输入模式下的基本操作
i 当前光标处插入
a 后一个字符插入
I 开头处插入
A 行末处插入
o 下一行插入
O 上一行插入
可做练习
[root@localhost ~]# vimtutor
第一章
第一节:使用方向键或者"HJKL"控制光标

第二节:通过命令进入和:q! <回车>退出vim


第三节:把---> The ccow jumpedd ovverr thhe mooon.用x键修复成
---> The cow jumped over the moon.

第四节:通过i键对文本内容进行插入补全句子

第五节,通过A补全文档

第六节:用:wq保存文档退出

第二章
第一节:用dw删除一个单词,光标会停留在下一个单词第一字母

第二节: 用d$命令删除从光标到行尾的所有内容

第三节:用de删除一个单词,光标会停留在下一个单词的前面

第四节:输入nw或ne(n为自然数)分别跳至第n单词的词头和词尾,0跳到行首
2w

3e

0

第五节:用dnw(n为自然数)来删除连续单词

第六节:使用dd命令删除整行,前面加数字就是几行一起删
dd
3dd

第七节:用u撤销之前的操作,用U撤销之前所有操作

第三章
第一节:用dd剪切该行,然后用p命令把剪切的内容复制到光标下一行

第二节:用r+替换内容对光标处文本进行替换

第三节:用ce或者cw删除错误部分并可直接输入


第四节:用c$直接删除光标后的内容,然后输入

第四章
第一节:gg页首,G页尾,nG(n为自然数)跳到n行
ctrl+g

G

gg

507gg

第二节:运用/+寻找内容对文本进行查找,n向下找寻,N向上找寻,

N

n
?加内容,那么n等同于N,N等同于n
CTRL+O回到你之前操作过的位置,CTRL+I回到你最新的位置
第三节:用%可以查对应括号的位置

按下%后

第四节:用:s/old/new/g 替换文本内的内容



输入 :#,#s/old/new/g 其中 #,# 代表的是替换操作的若干行中首尾两行的行号。


输入 :%s/old/new/g 则是替换整个文件中的每个匹配串。


输入 :%s/old/new/gc 会找到整个文件中的每个匹配串,并且对每个匹配串提示是否进行替换


第五章
第一节:在vim里用:!ls 执行外部命令


第二节:用:w 文件名 保存文本信息,并调用外部命令查看文件和删除文件




第三节:用:v选择多行进行操作

输入“:”


第四节:用:r 文件名,把已保存的文本粘贴到光标处


第六章
第一节:o是在光标下一行开始输入,O是光标上一行开始输入

输入“o"


输入“O”

第二节:e是跳到每个单词结尾处或者标点前的文字上,a可以在光标后插入

输入“e”

输入“a”


第三节:用R替换掉一个文本内容

输入“R”


第四节:运用v+y+p复制多个内容到指定位置,在光标后黏贴

输入“v”

输入“y”

输入“a”

第五节::set ?c忽略大小写:set no?c 注意大小写

已找到


I也被找到了

这就是忽略大小写

输入“:set hls is"后所有满足条件的都高亮了 
输入":set noic"

":nohlsearch"


第七章
第一节:help的使用,F1或者:help 内容


第二节:启用vim特性




第三节:按TAB补全命令


可用TAB键补全命令

总结
输入命令双向命令模式双向末行模式,但输入命令和末行模式不能双向
AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。
更多推荐


所有评论(0)