vim编辑器

1. Linux编辑器:vim的使用

vi/vim都是Linux中的多模式编辑器,不同的是vim是vi的升级版,它不仅兼容vi的所有指令,还有一些新的特性在里面,例如语法的高光,可视化操作不仅可以在终端运行,也可以运行于其他的系统

2. vim的基本概念

我们要熟知的vim模式要有三种,分别是命令模式(command mode)、插入模式(Insert mode)、和底行模式(last line mode),他们分别的功能如下:

①正常/普通/命令模式

控制屏幕光标的移动,字符、子或行的删除,移动复制某区段及进入插入模式和底行模式

②插入模式

只有在插入模式下,才可以做文字输入,按【ESC】键可回到命令模式,为常用的编辑模式

③末行模式

文件保存或退出,也可以进行文件替换,找字符串,列出行号等操作

在命令模式下," shift + : " 即可进入该模式,

3.vim的基本操作

进入vim:

在系统提示符号输入vim及文件名称之后,就进入vim编辑画面

注意:在进入vim之后,是处于【正常模式】,要切换到【插入模式】才能够输入文字

【正常模式】切换【插入模式】:

输入a:进入插入模式后,是从目前光标所在位置的下一个位置开始输入文字

输入i:进入插入模式,从光标当前位置开始输入文件

输入o:进入插入模式后,是插入新的一行,从行首开始输入文字

【正常模式】切换【末行模式】

【shift + ;】,输入【:】

退出vim及保存文件:

在正常模式下,按一下:进入末行模式,

w:(保存当前文件)

wq:(输入【wq】,保存并退出vim)

q!:(输入q!,不存盘强制退出)

4.vim 正常模式命令集

移动光标:

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

按【G】:移动到文章的最后

按【$】:移动到光标所在行的"行尾"

按【^】:移动到光标所在行的"行首"

按【w】:光标移动到下个字的开头

按【e】:光标跳到下个字的字尾

按【b】:光标回到上个字的开头

按【gg】:进入到文本开始

删除文字:

【x】:每按一次,删除光标所在位置的一个字符

【Nx】:表示删除光标所在位置的后面(包括自己在内)的N个字符

【X】:大写的X,每按一次就删除光标所在位置的"前面"一个字符

【NX】:表示删除光标所在位置的前面N个字符

复制:

【yw】:将光标所在之处到字符尾的字符复制到缓冲区中

【Nyw】:复制N个字到缓冲区

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

【Nyy】:表示拷贝从光标所在的该行开始往下的六行

【p】:将缓冲区的字符贴到光标所在位置

替换:

【r】:替换光标所在处的字符

【R】:替换光标所到之处的字符,直到按下【ESC】键为止

撤销上次操作:

【u】:如果误执行一个命令,马上按下【u】,回到上一个操作,多次u可以执行多次回复

【ctrl + r】:撤销的恢复

更改:

【cw】:更改光标所在处的字到字尾处

【cNw】:更改N个字到字尾

跳至指定的行:

【ctrl + g】:列出光标所在行的行号

【NG】:移动光标至文章的N行行首

5.vim末行模式命令集

列出行号:

【set nu】:输入【set nu】后,会在文件中的每一行前面列出行号

跳到文件的某一行:

【N】:N表示一个数字,在冒号后输入一个数字,再按回车键就会跳到该行了

查找字符:

【/关键字】:先按【/】键,再输入你想要寻找的字符,如果第一次找的关键字不是您想要的,可以一直按【n】会往后找到您想要的关键字为止

【?关键字】:先按【?】键,再输入您想要寻找的字符,如果第一次找的关键字不是你要找的,也可以一直按【n】,会往前寻找你要的关键字为止

保存文件:

【w】:在冒号输入字母w就可以将文件保存起来

离开vim:

【q】:退出,如果无法离开,可以在q后加一个!可以强制离开vim

【wq】:一般建议离开时,应该搭配【w】一起使用,在退出的同时保存文件

相关推荐
新子y3 小时前
【小白笔记】普通二叉树(General Binary Tree)和二叉搜索树的最近公共祖先(LCA)
开发语言·笔记·python
聪明的笨猪猪3 小时前
Java JVM “调优” 面试清单(含超通俗生活案例与深度理解)
java·经验分享·笔记·面试
"菠萝"3 小时前
C#知识学习-017(修饰符_6)
学习·c#
爱学习的uu3 小时前
CURSOR最新使用指南及使用思路
人工智能·笔记·python·软件工程
竹等寒3 小时前
Linux-网络安全私房菜(二)
linux·服务器·web安全
YuCaiH3 小时前
Linux文件处理
linux·笔记·嵌入式
早睡冠军候选人3 小时前
Ansible学习----Ansible Playbook
运维·服务器·学习·云原生·容器·ansible
sulikey3 小时前
从实验出发深入理解Linux目录权限:r、w、x分别控制什么?能否进入目录到底由谁决定?
linux·运维·服务器·ubuntu·centos
Cathy Bryant3 小时前
大模型损失函数(二):KL散度(Kullback-Leibler divergence)
笔记·神经网络·机器学习·数学建模·transformer