🎉博主首页: 有趣的中国人
🎉专栏首页: Linux
🎉其它专栏: C++初阶 | C++进阶 | 初阶数据结构
小伙伴们大家好,本片文章将会讲解Linux编辑器——Vim使用的相关内容。
如果看到最后您觉得这篇文章写得不错,有所收获,麻烦点赞👍、收藏🌟、留下评论📝,并关注💖作者。您的支持是我最大的动力,让我们一起努力,共同成长!
文章目录
Vim的基本概念和相关操作批量化注释和去注释普通用户的sudo提权vim的配置问题有关vim的异常退出
Vim的基本概念和相关操作
Vim
的设计目标是提供强大的编辑功能,同时保持简洁和高效。它有着丰富的功能,包括语法高亮、自动补全、宏录制、分屏编辑等等。Vim
有一个强大的插件系统,可以通过插件扩展其功能,使其适应各种开发环境和编程语言。
👨💻Vim的模式
Vim有好多种模式,但是我将主要讲解三种模式,这三种模式最基础,也最重要,分别是:
命令模式(command mode)插入模式(insert mode)底行模式(last line mode)💻命令模式
命令模式下可以控制屏幕光标的移动,字符、字或行的删除,移动复制某区段及进入
Insert mode
下,或者到last line mode
。
命令模式下相关操作:有关复制粘贴的行相关操作用命令
vim [文件名称]
即可进入到vim编辑器,进入Vim时默认处于的模式就是命令模式。
有关光标移动的相关操作
「(n) + yy」
:复制当前行(n:连续复制n行,可省略,默认一行)
「(n) + p」
:粘贴,当前光标的下一行(n:表示粘贴n次,可省略,默认一行)
「u」
:撤销
「ctrl + r」
:反撤销(对你的撤销进行撤销)
「(n) + dd」
:剪切/删除指定行,(n:表示剪切/删除n行,可省略,默认一行)
其他相关操作
「shift + 4 = $」
:将光标移动至此行末尾
「shift + 6 = ^」
:将光标移动至此行开头
「gg」
:将光标移动至整个文本的最开头
「shift + g = G」
:将光标移动至整个文本的最后一行
「n + shift + g = nG」
:将光标移动至文本的指定行
「(n) + h」
:将光标向左移动(n可以指定移动步数,下面类似)
「(n) + j」
:将光标向下移动(可以类比记忆:jump向下跳)
「(n) + k」
:将光标向上移动(可以类比记忆:king国王)
「(n) + l」
:将光标向右移动
「w」
:按单词为单位将光标后移
「b」
:按单词为单位将光标前移
进入到其他模式下的相关操作
「~」
:大小写的切换
「(n) + x」
:对光标位置后的元素进行删除(n表示可以连续删除多个,行内)
「(n) + shift + x = nX」
:对光标位置前的元素进行删除(n表示可以连续删除多个,行内)
「shift + r = R」
:进入替换模式,可以对光标当前位置的字符进行替换
「shift + zz = ZZ」
:保存并退出(一般不这么用)
进入插入模式
按
「i」
切换进入插入模式「insert mode」
,按“i”进入插入模式后是从光标当前位置开始输入文件;
按「a」
进入插入模式后,是从目前光标所在位置的下一个位置开始输入文字;
按「o」
进入插入模式后,是插入新的一行,从行首开始输入文字。进入底行模式
按
「shift + ; = :」
:进入底行模式
💻底行模式
文件保存或退出,也可以进行文件替换,找字符串,列出行号等操作。 在命令模式下,
离开vim的相关操作shift+; = :
即可进入该模式。
底行模式下相关操作:
查找字符
「w」
:在冒号输入字母「w」
就可以将文件保存起来
「q」
:按「q」
就是退出,如果无法离开vim
,可以在「q」
后跟一个「!」
强制离开vim
「wq」
:一般建议离开时,搭配「w」
一起使用,这样在退出的时候还可以保存文件
行号
「/关键字」
: 先按「/」
键,再输入您想寻找的字符,如果第一次找的关键字不是您想要的,可以一直按「n」
会往后寻找到您要的关键字为止
Shell命令执行
「set nu」
: 输入「set nu」
后,会在文件中的每一行前面列出行号
「nonu」
: 输入「nonu」
后,会去掉行号
分屏操作
「!command」
:可以不退出vim,进行Shell命令的执行,例如用man来查看函数的用法,例如查看qsort
的相关用法:
底行模式进入命令模式我们正常写一个项目时要进行声明和定义的分离,即可能存在头文件,我们用命令
切换到下一个窗口:「vs filename」
即可实现分屏,可以使用以下命令在分屏模式下进行切换Ctrl + w
,然后按下w
。
切换到上一个窗口:Ctrl + w
,然后按下W
。
例如:
从底行模式进入命令模式就按下
Esc
即可。
插入模式进入命令模式也是按下Esc
即可。
底行模式不能直接进入插入模式,插入模式也不能直接进入底行模式,只能通过命令模式这个中转站然后再进行模式的相互切换。
💻总结
批量化注释和去注释
👨💻批量化注释操作
「ctrl + v」
进入视图模式;用「h j k l」
进行区域的选择;按「shift + i」
;在输入//
;最后按两次Esc
即可完成批量化注释。
👨💻批量化去注释操作
按「ctrl + v」
进入视图模式;用「h j k l」
进行区域的选择(仅包含//
);按住d
即可完成去注释的操作。
普通用户的sudo提权
对于普通用户,没有权利进行sudo
的提权,因为对于一个用户能否进入sudo
提权,他是否有这个权限,是存在拥有者是root
的一个文件中的,这个文件时 /etc/sudoers
,如果想给普通用户有sudo
的提权权力,要在这个文件中添加普通用户,因此也是需要root
来进行操作的,所以这就是为什么sudo
提权的时候只需要输入普通用户的密码即可。
💻输入命令 vim /etc/sudoers 进入 sudoers 文件
在100行附近的如图位置,添加普通用户的权限即可。
注意这里修改后要强制退出wq!
就完成了
vim的配置问题
💻vim配置原理
在每次启动vim之前,vim都会读取若干的配置文件,例如
.vmrc
;
我们可以在这个配置文件中添加相关的配置,例如 自动缩进,显示行号,那么在每次启动vim的时候都会读取此配置文件,就在你的vim中显示出来了。
💻查看.vmrc文件
因为此文件是 隐藏文件,所以用命令ls -al
查看:
因为我这里已经配置好了,就不进行配置了。
也可以用比特的开源项目进行一键配置,这是链接: 比特VimForCpp配置Vim
注意一定要在普通用户下进行配置,并且一定要是centos7.X
的系统。
输入命令,即可一键配置(可以先看文档):
curl -sLf https://gitee.com/HGtz2222/VimForCpp/raw/master/install.sh -o ./install.sh && bash ./install.sh
有关vim的异常退出
当Vim异常退出时,通常会生成一个称为“
.swp
”文件的隐藏文件。这个文件是Vim的会话恢复文件,用于存储你正在编辑的文件的临时状态。它包含了你最后一次编辑的内容,以便在下次启动Vim时恢复编辑会话。
这个“.swp
”文件通常以以下格式命名:“.filename.swp
”,其中“filename
”是你正在编辑的文件的名称。
如果Vim异常退出,你可以尝试重新启动Vim,并在同一目录下查找以“.swp
”结尾的文件,然后使用Vim的恢复功能来恢复丢失的编辑内容。
你可以删除这个文件(
vim filename.c按R或者E恢复或者继续编辑:wq保存并退出;删除.swp结尾的临时文件.swp
结尾),他就不会提示了,也可以E继续编辑,R
恢复,Q
退出。
但是删除之后你没保存的内容就会消失,也就是说.swp
这个文件相当于是系统给你临时备份的一份,如果你想恢复文件,按照以下操作即可: