RHCE7 管理II-3使用VIM编辑器

vim的不同版本:

1.vim-minial 提供vi和相关命令。在RHEL 7的最小安装中

2.vim-enhanced 提供vim命令。提供语法突出显示、文件类型插件和拼写检查等功能

3.vim-X11 提供gvim,这是可以在自有图形窗口而不是终端中运行的vim版本

vim的三个主要模式:

模式 功能
命令模式 文件导航、剪切和粘贴以及简单命令。撤销、恢复和其它操作也在此模式中执行
插入模式 常规文本编辑。替换模式是插入模式的一种变体
Ex模式  用于保存、退出和打开文件,以及搜索、替换和其它更为复杂的操作。此模式中可以将程序的输出插入到当前文件中,以及配置vim等等

要切换至插入模式,系统提供了可用的命令,分别对应不同的键

结果
i 切换至插入模式,并在当前光标位置之前开始插入(插入)
a 切换至插入模式,并在当前光标位置之后开始插入(附加)
I 将光标移至当前行的开头位置,并切换至插入模式
A 将光标移至当前行的结尾位置,并切换至插入模式
R 从光标下的字符开始,切换至替换模式。处于替换模式时,不会插入文本,输入的每个字符均替换掉当前文档中的字符
o 在当前行的下方新打开一个行,并切换至插入模式
O 在当前行的上方新打开一个行,并切换至插入模式

移动

结果
w 将光标移动到下一个单词的开头(W会略过标点符号)
b 将光标移动到上一个单词的开头(B会略过标点符号)
将光标移到当前或上一句子的开头
将光标移到当前或下一句子的开头
{ 将光标移到当前/上一段落的开头
} 将光标移到当前下一段落的开头

*********************************

在命令模式

$:跳转到行尾

^:挑战到行首(按数字键0也可以)

gg:跳转到首行

G:跳转到最后一行

yy: 复制一行

nyy: 复制n行

p:粘贴

dd:删除一行

ndd:删除n行

直接跳转到最后一行

# vi + passwd

直接跳转到第20行

# vi +20 passwd

把命令的执行结果插入正在编辑的文件

:r ! uname -a

如果不想把执行结果插入到正在编辑的文件,只是看看

:! uname -a

把其他文件内容取到正在编辑的文件

:r /etc/passwd

把当前文件的1-5行保存到新的文件newname.txt中

:1,5 w newname.txt

删除第n行 :nd

删除1-10行 :1,10d

加行号 :set nu

去掉行号 :set nonu

同时编辑两个文件(在两个文件之间切换光标:先ctrl+w,然后在按左右方向键)

vim -O t1.txt t2.txt 同时保存(:wqall)

命令模式下进行搜索(n:向上搜索;N:向下搜索)

/所有关键字

比如: /nologin

替换

:s/root/ROOT/g         #替换当前行

:%s/root/ROOT/g      #替换所有

:1,5s/root/ROOT/g    #替换1-5行

vim的帮助教程:vimtutor

看中文 LANG=zh_CN.UTF-8;vimtutor

原文地址:https://www.cnblogs.com/abclife/p/4620273.html