Linux编辑器—vim的使用

本期来讲解Linux中常用且高效的编辑器vim的基本使用和指令操作

目录

一、vim的主要三种工作模式

[1.命令模式(Command Mode)](#1.命令模式(Command Mode))

[2.插⼊模式(Insert mode)](#2.插⼊模式(Insert mode))

[3.底行模式(Last Line Mode)](#3.底行模式(Last Line Mode))

二、vim的基本操作

三、vim命令模式下的命令集

1.多种转换插入模式的操作

2.光标移动

3.删除文字

4.复制粘贴

5.替换

6.撤销

四、vim底行模式下的命令集

1.列出行号

2.跳转到#行

3.查找字符

4.保存文件

5.退出vim


一、vim的主要三种工作模式

vim拥有十几种工作模式,这里仅介绍三种主要模式。

1.命令模式**(Command Mode)**

这是 Vim 启动后的默认模式。在此模式下,你输入的按键被解读为命令,用于移动光标、删除文本、复制粘贴等操作。例如,h(左移光标)、j(下移光标)、k(上移光标)、l(右移光标),dd(删除当前行)等。从其他模式按下 Esc 键通常可返回命令模式。

2.插⼊模式(Insert mode)

用于输入文本内容。在命令模式下按下 i(在光标前插入,输入在当前光标的前面)、a(在光标后追加,也就是输入在当前光标的后面)、o(在光标下新开一行并进入插入模式)等键可进入插入模式,此时左下角会显示 -- INSERT --。在此模式下,输入的字符会直接插入到文档中,与普通文本编辑软件类似。要回到命令模式,需按 Esc 键。

3.底行模式(Last Line Mode)

用于执行一些针对整个文件的操作,如保存文件、退出 Vim、查找替换等。在命令模式下 输入 :,光标会移动到屏幕底部显示 : 提示符,此时进入底行模式。例如,输入 :w 保存文件,:q 退出 Vim,:wq 保存并退出。

二、vim的基本操作

在操作系统输入vim+文件名称,就可以进入vim的屏幕编辑画面,如:

vim code.c

不过有⼀点要特别注意,就是刚进⼊vim的时候,是处于命令模式 ,你要切换到**插⼊模式(命令模式输入i/a/o)**才能够输⼊⽂字。

要切换到底行模式,需要先进入命令模式,输入":"即可。而无论是底行模式还是插入模式,只需要点击键盘左上角的ESC键即可强制转换回命令模式。

如果想要退出vim编辑界面,需要先进入底行模式,接下来有三种退出方式:

: w (保存当前⽂件)
: wq (输⼊「wq」,存盘并退出vim)
: q! (输⼊q!,不存盘强制退出vim)

三、vim命令模式下的命令集

1.多种转换插入模式的操作

以下操作均为命令模式下输入:

按i 操作:按"i"进⼊插⼊模式后是从光标当前位置开始输⼊文字,文字在光标前面出现;

按a操作:按"a"进入插入模式后从光标下一位开始输入文字,文字在光标后面出现;

按o操作:按"o"进入插入模式后,是在光标下面插入了新的一行,从行首开始输入文字。

2.光标移动

vim可以直接用键盘上的光标来上下左右移动,但正规的vim是用小写英文字母h、j、 k、l,分别控制光标左、下、上、右移⼀格;

按"G"移动到文本最后;

按"$"移动到光标所在行的行尾;

按"^"移动到光标所在行的行首;

按"w"光标跳到下个字或单词的开头;

按"b"光标跳到上个字或单词的开头;

按"gg"光标回到文本开始。

3.删除文字

x:每按一次,删除光标所在位置的一个字符(相当于插入模式的delete键);

#x:比如6x,删除光标所在位置后面(包括光标本身)的6个字符;

X:每按一次,删除光标所在位置的前一个字符;

#X,比如5X,删除光标所在位置前面(不包括光标本身)的5个字符;

dd:删除光标所在行;

#dd:如10dd,删除光标所在行及后面共10行的文字。

4.复制粘贴

yy:复制光标所在行到缓冲区;

#yy:如30yy,复制光标所在行及往下共30行到缓冲区;

p:将缓冲区内的字符粘贴到光标所在位置,注意:所有与"y"有关的复制命令必须与"p"配套使用才能完成复制粘贴的功能。

5.替换

r:点击r后再点击想要改成的字符,将光标位置的字符改变;

R:替换光标所到位置的所有字符,直到按下ESC键停止。

6.撤销

u:撤销操作回复到操作前的状态,相当于我们熟悉的ctrl+z(这里不能用),可以点击多次进行多次回复;

ctrl + r:撤销的恢复(相当于把撤销给撤销了)。

四、vim底行模式下的命令集

1.列出行号

:set nu(会在文件中的每一行前面列出行号);

2.跳转到#行

:#。 #是一个数字,在底行模式的冒号后面输入一个数字,表示行号,光标就会自动跳转到那一行。

3.查找字符

/关键字:先按/键,再输入想要查找的字符,就会将文本内所有这样的字符高光染色,如果找到的第一个字符不是我们想要的,就一直按n,光标就会一直移动到下一个这样的字符前面;

?关键字:先按?键,再输入想要查找的字符,就会将文本内所有这样的字符高光染色,如果找到的第一个字符不是我们想要的,就一直按n,光标就会一直移动到上一个这样的字符前面;

如果想要取消高光,则再底行模式冒号后面输入nohlsearch即可消除。

4.保存文件

:w,在冒号后面输入w即可保存成功。

5.退出vim

:q,冒号后面按"q"就是退出,但是此时没有对文件进行保存,直接退出可能会报错,只需要在"q"后面加一个"!"即可强制退出;

:wq,一般建议离开时在"q"前面加一个"w",表示保存并退出。

结束:好啦,本期对vim的操作讲解到此结束,喜欢的建议点赞加收藏哦~

相关推荐
一只自律的鸡44 分钟前
【Linux驱动】bug处理 ens33找不到IP
linux·运维·bug
17(无规则自律)1 小时前
【CSAPP 读书笔记】第二章:信息的表示和处理
linux·嵌入式硬件·考研·高考
!chen1 小时前
linux服务器静默安装Oracle26ai
linux·运维·服务器
REDcker1 小时前
Linux 文件描述符与 Socket 选项操作详解
linux·运维·网络
蒹葭玉树2 小时前
【C++上岸】C++常见面试题目--操作系统篇(第二十八期)
linux·c++·面试
2501_927773072 小时前
imx6驱动
linux·运维·服务器
hy____1232 小时前
Linux_进程间通信
linux·运维·服务器
郭涤生2 小时前
C++的函数是否可以做到完全覆盖Linux和windows的跨平台
linux·c++·windows
南宫码农3 小时前
神马影视8.5版本如意伪静态+视频教程
linux·运维·centos
坐怀不乱杯魂3 小时前
Linux网络 - 网络层
linux·服务器·网络