Vi编辑器
什么是vi编辑器
1.vi编辑器通常被简称为vi,而vi又是visual editor的简称 。它在Linux上的地位就像Edit程序在DOS上一样。它可以执行输出、删除、查找、替换、块操作等众多文本操作,而且用户可以根据自己的需要对其进行定制,这是其他编辑程序所没有的。
2.vi 编辑器并不是一个排版程序,它不像Word或WPS那样可以对字体、格式、段落等其他属性进行编排,它只是一个文本编辑程序。没有菜单,只有命令,且命令繁多。vi有3种基本工作模式:命令行模式、文本输入模式和末行模式。
3.Vim是vi的加强版,比vi更容易使用。vi的命令几乎全部都可以在vim上使用。
vi编辑器的工作模式
vi编辑器界面可以使用三种不同的工作模式。包括命令模式、输入模式和末行模式。
命令模式:启动vi编辑器后默认进入命令模式。该模式中主要如光标的移动、字符串查找、以及删除、复制、粘贴文件等文件相关操作。
输入模式:该模式中主要的操作就是录入文件内容,可以对文件进行修改或者添加新的内容。且处于输入模式的时候,vi编辑器的最后一行会出现“–INSERT–”的状态提示信息。
末行模式:该模式中可以vi编辑环境、保存文件、退出编辑器,以及对文件内容进行查找、替换等操作。处于末行模式,vi编辑器的最后一行会出现冒号“:”的提示符。
命令模式下的基本操作
切换模式:
a:在光标之后插入内容
i:在国标之前插入内容
o:在光标所在行的后面插入新行
O:在光标所在行的前面插入新行
光标的移动
方向移动 ↑、↓、←、→ ----------上、下、左、右
翻页
page down或ctrl+F 向下翻动一整页内容
page up或ctrl+B 向上翻动一整页内容
行内快速跳转
home或^、数字0 跳转至行首
end或$键 跳转至行尾
行间快速跳转
gg或1G 跳转文件的行首
G 跳转文件的末尾
#+G 跳转至文件的第#行
行号显示
:set nu 在编辑器中显示行号
:set nu!或:set nonu 在编辑器中取消行号显示
复制、粘贴、删除等操作
删除
x 删除光标处的单个字符
dd 删除光标所在行的内容
#dd 删除光标所在行开始到#行的内容
d^ 删除当前光标之前到行首的内容
d$ 删除当前光标之后到行尾的内容
dw 删除单个单词
复制
yy 复制当前行整行的内容到剪贴板
#yy 复制从光标所在行开始到#行的内容
粘贴
p(小写) 粘贴到光标之前
P(大写) 粘贴到光标之后
撤销
u(小写) 撤销当前操作
U(大写) 取消对当前行的所有编辑
保存并退出
ZZ(大写) 保存当前的文件内容并且退出
wq (小写)与ZZ没有什么区别
q!(小写)不保## 标题存并强制退出
查找文件内容
/word 从上而下在文件中查找字符串“word”
?worf 从下而上在文件中查找字符串“word”
n 定位下一个匹配的被查字符串
N 定位上一个匹配的被查字符串
末行模式下的基本操作,保存文件及退出vi编辑器
保存文件:
:w 保存修改的内容
:w /root/newfile 另存为其他文件
退出vi:
:q 未修改退出
:q! 放弃对文件内容的修改,并退出vi
保存文件退出vi:
:wq 保存修改的内容并退出
打开新文件或读入其他文件内容
:e ~/install.log 打开新的文件进行编辑
:r /etc/filesystems 在当前文件中读入其他文件内容
文件内容替换
:s /old/new 将当前行中查找到的第一个字符“old”串替换为“new”
:s /old/new/g 将当前行中查找到的所有字符串“old”替换“new”
:#,# s/old/new/g 在行号“#,#”范围内替换所有字符串“old”为“new”
:% s/old/new/g 在整个文件范围内替换所有的字符串“old”为“new”
所有字符串“old”替换“new”
:#,# s/old/new/g 在行号“#,#”范围内替换所有字符串“old”为“new”
:% s/old/new/g 在整个文件范围内替换所有的字符串“old”为“new”
:s /old/new/c 在替换命令末尾加入c命令,将对每个替换动作提示用户进行确认
重中之重 希望能给到你们帮助 谢谢收看