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的操作讲解到此结束,喜欢的建议点赞加收藏哦~

相关推荐
XIAOHEZIcode12 分钟前
Ubuntu 终端美化全栈指南:Bash 到 Kitty 踩坑实录
linux·ubuntu·命令行
唐青枫2 小时前
别再只会用 cron:Linux systemd Timer 定时任务实战详解
linux
AlfredZhao2 天前
生产环境里,为什么不建议把普通端口直接暴露到公网?
linux·https·443·80
戴为沐3 天前
Linux内存扩容指南
linux
zylyehuo3 天前
Linux 彻底且安全地删除文件
linux
用户805533698034 天前
主线 U-Boot 上 RK3506:和闭源 rkbin 拔河的三个隐性契约
linux·嵌入式
用户034095297914 天前
linux fcitx 5 雾凇拼音 设置在中文输入法下仍然输入英文标点
linux
Web3探索者6 天前
可视化服务器管理和传统命令行区别是什么?新手教程:Linux 运维到底该用图形界面还是 SSH 命令行?
linux·ssh
zylyehuo6 天前
Linux系统中网线与USB网络共享冲突
linux
Sokach10157 天前
Linux Shell 脚本从零到能用:一个新手的一天学习总结
linux