文章目录
一、 初识vim
1.1、什么是vim
vim编辑器
Linux
中最常用的文本编辑器有vim(vi的进阶版,简称vi
)和emacs
;
vim是一款全屏交互式文本编辑器,没有菜单只有命令;
vim不支持排版,如对word中的对字体、格式、段落等属性进行编排。
vim可以执行输出、删除、查找、替换等文本操作;
通过vim可以修改与设定配置文件、进行程序代码编写
1.2、vim版本
[root@zy yao]# vi
二、vim的模式
2.2 、工作模式
vi有3种模式,分别为:
命令模式、插入模式、底行模式
✓ 命令模式:使用vi打开文件后,默认进入命令模式。(在该模式中用户可以通过键盘控制光标的移动以及文本内容的复制、粘
贴、删除等操作。但无法编辑文件件内容,即无法输入文本信息。)
✓ 插入模式:
只有在该模式下,用户才能进行文字编辑输入。
在命令模式下输入插入命令才可以进入插入模式,在插入模式下输入的任 何字符都被当做文件内容进行处理,而不是命令本身。 用户按Esc键可以返回到命令模式。
插入模式:
ubuntu 发行版本下的vi编辑器插入模式
✓ 底行模式:
编辑模式下输入“冒号:
”可以进入底行模式;
在该模式下,光标位于屏幕的底行状态栏;
命令模式可以可以对文件进行保存、查找、退出、设置
等操作。
连续按下两次 esc 键可以返回到命令模式
三、 vim的基本操作流程
3.1、用 vi 打开或者新建一个文件
如 vi hello.c
(如果该文件不存在,则新建;如果该文件已存在,则打开。)
此时,进入的是命令模式,输入的内容被解析为命令,而不是文本内容
3.2 、i 按键 进入插入模式
在编辑模式下,输入 i ,进入插入模式;
此时,屏幕底部有“插入”提示;
在该模式下,可以编辑录入文字内容。
编辑完了之后 ,在插入模式下 按Esc
切换到 命令模式
命令模式下输入 :
进入命令模式 紧接着输入 wq
保持并退出
3.3 、操作流程汇总
命令模式 -> 插入模式 -> 底行模式
(操作过程中要时刻注意屏幕下方状态栏的文字提示!)
四、vim功能键
4.1、 命令模式下的功能键
i:
切换到插入模式,在光标所在位置前插入文本
a
:切换到插入模式,在光标所在位置后插入文本
o
:切换到插入模式,在光标所在位置下一行行首开始插入文本
I:
行首插入A
:行尾插入O
:上一行插入
h j kl
(或者方向键):左、下、上、右
0
(数字0):光标移到本行的开头
$
:移动到光标所在的行尾w
:下一单词首e
:单词尾
nG
:光标移动到第n行(n为数字) (:n功能同nG)Ctrl + b
向上翻页Ctrl + f
向下翻页
+:光标移动到非空格的下一列
-:光标移动到非空格的上一列
n<回车>(n为数字):输入数字回车后光标向下移动n行
n< space > (n为数字) :输入数字,按下空格后向光标右移动n个字符
H:光标移动到当前屏幕最上方一行的第一个字符
L:光标移动到当前屏幕最下方一行的第一个字符
M:光标移动到当前屏幕最中间一行的第一个字符
gg:移动到文件第1行的一个字符
G:光标移到到文件最后一行的第一个字符
/word:查找一个名为word的字符串(配合 Ctrl + b/f翻页)
x:删除光标所在处的一个字符
X:删除光标所在位置的前一个字符(相当于退格键)
dd:删除光标所在行
ndd:从光标所在行开始向下删除n行(n为数字)
dG:删除当前字符到文件末尾
dgg:删除当前字符到文件开始
d$(或者D):删除当前字符到当前行尾
d0:删除当前字符到当前行首yy(Y):复制光标所在行
nyy:复制光标所在行开始的向下n行
y$:从光标所在位置开始复制直到当前行结束
y0:从光标所在位置开始复制直到当前行首
yw:复制一个单词
u:撤销前一次操作
p:将复制的内容粘贴到光标所在位置后面一行
P:将复制的内容粘贴到光标所在位置前面一行
. :重复前一个指令
4.2、 插入模式下的功能键
只有一个:Esc
功能:返回到命令模式
4.3 、底行模式下的功能键
:w 将编辑的文件保存到磁盘
:q 退出vi :q! 强制退出vi :wq 存盘后退出 :x 保存退出
:w [filename]
另存为一个名为filename的文件
:r filename
将filename
中的内容复制到当前文件光标位置
:sp file
水平分离文件
:vsp
垂直分离文件ctrl+ww
切换文件
:set nu
显示行号
:set nonu
取消行号
:noh
取消高亮显示
:set cursorline
突出显示当前行
:set all
查看所有设置命令:%s/被替换内容/替换内容 替换整个文档中的全部目标
:n1,n2 s/word1/word2在指定行间替换,将word1替换为word2
:n1,n2 s/^/# 在行首插入#号 (n1 n2为有效范围)
配置家目录中的 .vimrc 文件,将设置永久生效