【Linux】vim(vi)常用操作

目录:

0、vim:安装、升级、卸载

1、vim配置、插件

2、三种模式常用操作

----2.0 命令模式

----|----2.0.0 【命令模式 => 输入模式】的几种方式和区别

----|----2.0.1 移动光标的各种骚操作

----|----2.0.2 删除内容

----|----2.0.3 复制、粘贴

----|----2.0.4 撤销、重做

----|----2.0.5 多行注释:添加、删除

----2.1 输入模式

----2.2 底线命令模式

----|----2.2.0 常用基础命令

----|----2.2.1 查找内容

----|----2.2.2 替换内容


所有的Unix Like系统,都会内建vi文本编辑器,但其他的编辑器则不一定会存在。

但 目前常用的是vim编辑器(由vi发展而来的加强版、升级版):对比vi的优点or区别

  • 语法加亮
  • 易用性
  • vi完全兼容
  • vi 适合文本编辑;vim适合coding,当然还能文本编辑
  • vim可用于其他操作系统(windows/macos)

所以,不用理会vi,【学习vim就能解决一切】,无需关注vi,无需纠结两者区别。

?0、安装、升级、卸载

最小化安装的Centos7是不自带vim的(但自带vi),所以需要自己安装。

查看vim所在目录:只是看到vim这个文件在哪,它不是文件夹

[root@master Cshell]# which vim      
/usr/bin/vim

查看vim 版本:这个命令还可以看到修补的补丁、新增或减少的特性。

[root@master Cshell]# vim --version
VIM - Vi IMproved 7.4 (2013 Aug 10, compiled Oct 30 2018 19:56:57)
...

vim 安装python插件??还有其他插件,比如 自动补全插件(YouCompleteMe)、文件浏览器和窗口管理器插件(WinManager)、等等各种插件。暂时不研究这些,先提出来。

其他后续添加

?1、简单配置 和 安装插件

配置【对所有用户都有效的】,在/etc/vimrc文件里配置,不过最好是不要动这个文件。
采用【每个用户建立私有的配置文件】,这里以root用户为例。

[root@master ~]# cd ~ # 进入root主目录
[root@master ~]# pwd
/root

[root@master ~]# vim .vimrc #新建.vimrc文件,并编辑它

set nu "显示行号

syntax on "语法高亮

autocmd InsertEnter * se cul "用浅色高亮当前行

set showcmd "输入的命令显示出来,看的更清楚些

set cursorline "突出显示当前行

set hlsearch "搜索逐字符高亮

set showmatch "高亮显示匹配的括号

上方是配置前的效果。下方是配置后的效果:保存后再次vim时就生效了!
在这里插入图片描述
Linux】配置一个强大的Vim:够用就行
强大的vim配置文件,让编程更随意
超级强大的vim配置(vimplus)–续集

【当然,也可以在vim里使用maven(比如用来打包jar!!)】
其他后续添加

?2、模式、以及之间的切换,常用操作

在这里插入图片描述
大部分命令集中在:命令模式、底线命令模式中

?2.0 命令模式

一启动vim,进入的就是命令模式,在这个状态下敲击键盘动作会被vim识别为命令,而非输入字符命令模式有很多基本的命令

命令模式===》》输入模式 的几种方式、区别:

  • iI(大写):【Insert】
    • i,从当前光标所在处输入;
    • I,在当前光标所在行的第一个非空格符处开始输入。
  • aA
    • a,从当前光标所在处的下一个字符处开始输入;
    • A,在当前光标所在行的行尾开始输入。
  • oO(大写)
    • o,在当前光标所在行下方新增一空白行;
    • O,在当前光标所在行上方新增一空白行。
  • rR:【replace】
    • r,首先进入输入模式,接着输入一个字符,光标所在处的那一个字符会替代为刚输入的字符,接着便进入正常的输入模式(i);
    • R,会一直取代光标所在的字符,直到按下 ESC 为止。
  • 输入 :,进入底线命令模式

✈️ 移动光标相关

命令模式下:上下左右键 与 字母 h j k l 对应
在这里插入图片描述

  • Home键数字0^,移动到这行的最前面的一个字符处(光标也停在该字符上)。0是最方便和易记忆的。
  • End键美金符号$,移动到这行的最后的一个字符处(光标也停在该字符上)
  • 数字+一次空格【组合】:如依次按下20一次空格,光标会向右移动20个字符的距离
  • 光标向上移动20行,依次按下:2+0+回车键1次
  • 光标向上移动20行,依次按下: 2+0+k
  • gg,按下两次G键,光标移动到文本的第一行第一个字符处
  • nG,光标移动到指定的行数所在行,如依次按下 2+0+G,光标移动到文本第20行
  • H,移动光标到屏幕最上方那行的第一个字符【high】
  • M,移动光标到屏幕中间那行的第一个字符【middle】
  • L,移动光标到屏幕最下方那行的第一个字符【low】
  • w,光标移动到下一个单词首字符,到了行尾时会自动往下一行移动【word】
  • b,光标移动到前一个单词首字符

删除相关:

  • x 【只是】删除当前光标所在处的字符,还是留在命令模式X(大写)向前删除一个字符(等同退格键back space)
  • dd删除光标所在行的全部内容【Delete】
  • ndd删除光标所在行的向下n行(含光标所在行)内容。n 是正整数
  • d1G删除 光标所在 到第一行的所有内容
  • dG删除光标所在 到最后一行的所有内容
  • d0c^, 删除光标所在的前一个字符行首所有内容
  • d$c$删除光标所在的后一个字符行尾的所有内容
  • c,与数字、j组合,如:3cj,表示向下删除共3行内容(包括光标所在行)
  • cw,删除光标所在的一个单词。【擦除(chachu)一个单词(word)】

✔️复制、粘贴相关 (其中,y代表复制内容到vim缓存区)

  • yy复制光标所在行的内容
  • nyy复制光标所在行的向下n行(包括当前所在行)的内容
  • y1G复制光标所在行到文本第一行的所有内容
  • yG复制光标所在行到文本最后一行的内容
  • y0复制光标所在的那个字符 到本行行首的所有内容
  • y$复制光标所在的那个字符 到本行行尾的所有内容
  • p,将已复制的内容在光标的下一行开始粘贴
  • P(大写),将已复制的内容在光标的上一行开始粘贴
  • J(大写),将光标所在行 和下一行的内容结合成一行。【一个大钩子(J)把下面的一行拉到自己行尾】

?撤销、重做

  • u,撤销前一个操作
  • U,撤销当前所有操作
  • Ctrl+r,重做上一个操作。跟u,配合使用
  • . 点符号,重复前一个操作,如:前一个操作是dd,按.还是dd操作

?添加和删除注释

命令模式下:多行注释、取消注释(也可用于多行缩进等操作,如空格符)。单行注释一样的道理。
⚡️多行注释
0 将光标移动到需要添加注释的位置
1 Ctrl+v:进入Visual block模式【块选择模式】
2 按j(向下)、或k(向上):选中多行
3 按大写字母I(不是L):表示在【光标所在行的第一个非空格符处开始输入】
4 输入注释符,如 #//(空格等)
5 ESC键,此时所选中的行的都注释了

⚡️取消多行注释
0 光标移动到需要注释符所在位置
1 Ctrl+v:进入Visual block模式
2 按l(小写字母L),表示向右移动光标,选中列的个数,如注释符//是两列
3 按j(向下)、或k(向上):选中有注释的多行
4 按d键:便删除了所选中的多行注释

?2.1 输入模式

输入模式常见操作:

  • 方向键,在文本中一次移动一个光标
  • Back Space,删除光标的一个字符
  • DEL,删除光标的一个字符
  • 按住鼠标左键选择内容,相当于复制内容
  • shift+Insert组合键,在当前光标处开始粘贴
  • 输入模式下,按 ESC 退出输入模式,切到 命令模式

?2.2 底线命令模式

命令模式下按 :(英文冒号)便进入底线命令模式

?常用基础命令

底线命令模式下,可输入单个 或多个字符的命令

  • ESC键,可随时退出底线命令模式,不管当前在底线里输入了什么。
  • :q 退出vim【quit】
  • :w 存盘【write】
  • ! 强行某些操作
  • :e path/file_name新建一个文件【edit】
  • :set nu 显示行号;:set nonu隐藏行号,等等各种配置vim的内容,回车即可在当前生效。【number,no number】
  • 一些基本命令可组合使用,如::wq:q!
  • :r path/file_name会在当前光标处,读取某文件内容到当前文件中,可进行编辑等操作。【read】
  • :w path/file_name将编辑的内容另存为
  • :n1,n2 w path/file_name 将第n1行到n2行(包括n2)的内容另存为
  • :! command 【暂时离开】vim底线命令模式,去执行command这个命令。如:! pwd
  • ZZ (两个大写字母Z),若文档未变动,则直接离开vim;若文档改动了,则保存后离开vim。
  • vim 1.txt 2.txt 3.txt 同时打开多个文件
    • :args 在底部显示打开了哪些文档
    • :next 切换到下一个文件
    • :prev 切换到上一个文件
    • :first 定位到首文件
    • :last 定位到尾文件

?查找内容

  • 输入/后,输入需要查找的内容。从上往下查找
  • 输入?后,再输入需要查找的内容。从下往上查找
  • n,定位下一个匹配的
  • N,定位上一个匹配的

?替换内容

  • :s/1/2,搜索当前行的第一个1,并用2替换【search】
  • :s/1/2/g,搜索当前行的所有1,并用2替换【g global】
  • :%s/1/2/g,在整个文档中将1替换为2【100%全部】

参考:
vim(vi)常用操作及记忆方法
菜鸟教程-Linux vi/vim:里面的图不错
vi与vim的区别以及常用命令:区别了解即可

【彩蛋】

⚠️❗️❓?????⚡️⭐️❌✔️⚪️⚫️◼️◻️⬛️⬜️??
CSDN markdown-emoji表情
MD编辑器就是不告诉你之表情

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值