【Linux】2.2 环境基础开发工具使用——vim

news/2024/7/21 15:14:11 标签: linux, vim, 运维

文章目录

  • 什么是 vim
  • vim 的基本操作
  • vim 指令集
    • Normal mode 指令集
      • 插入模式
      • 复制
      • 粘贴
      • 撤销
      • 剪切
      • 光标移动
      • 删除
    • last line mode 指令集
      • 列出行号
      • 跳到文件中的某一行
      • 查找字符
      • 保存文件
  • vim 的配置


vim_4">什么是 vim

  • Linux editor —— vim ——多模式的编辑器
  • 每种模式有差异,模式之间可以相互转换
  • vim 常用的 三~五 种模式
    • Normal mode(正常/普通/命令模式)
    • Insert mode (插入模式)
    • last line mode(末行/底行模式)
    • 替换模式
    • 视图模式

vim__16">vim 的基本操作

在这里插入图片描述

  • 进入vim之后,是处于 [正常模式] ,要切换到 [插入模式] 才能够输入文字。
  • [正常模式] 切换至[插入模式]
    • 输入a
    • 输入i
    • 输入o
  • 退出vim及保存文件,在 [正常模式] 下,按一下 : 冒号键进入 「Last line mode」,例如:
    • : w (保存当前文件)
    • : wq (输入「wq」,存盘并退出vim)
    • : q! (输入q!,不存盘强制退出vim)

vim__31">vim 指令集

Normal mode 指令集

(大部分指令都是在 Normal mode 下进行的)

插入模式

  • 按「i」切换进入插入模式「insert mode」,按“i”进入插入模式后是从光标当前位置开始输入文件;
  • 按「a」进入插入模式后,是从目前光标所在位置的下一个位置开始输入文字;
  • 按「o」进入插入模式后,是插入新的一行,从行首开始输入文字。

按「a」进入插入模式:(注意观察光标随模式改变的变化
在这里插入图片描述
按「o」进入插入模式:(注意观察光标随模式改变的变化
在这里插入图片描述

复制

  • yycopy 本行
  • nyy:copy 当前行在内的以下n行的内容

在这里插入图片描述

ps. yanking 是 Vim 中拷贝命令的名字。由于 “c” 已经被用于表示 change 了,所以拷贝 (copy) 就不能再用 “c” 了。但 “y” 还是可用的。把这个命令称为 “yanking” 是为了更容易记住 “y” 这个键。

粘贴

  • p/np:从当前光标所在处 粘贴一份/n份 复制的内容的 从当前光标所在处
    在这里插入图片描述

撤销

  • u撤销
  • ctrl+r:对撤销进行撤销
    在这里插入图片描述

剪切

  • dd/ndd剪切 对当前行在内的以下 n 行 的内容进行剪切
    (如果只 ddp 就是 删除
    在这里插入图片描述

光标移动

  • vim可以直接用键盘上的光标来上下左右移动,但正规的vim是用小写英文字母hjkl,分别控制光标 左、下、上、右 移一格
  • G:移动到文章的最后
  • $:移动到光标所在行的“行尾”
  • ^:移动到光标所在行的“行首”
  • w:光标跳到下个字的开头
  • e:光标跳到下个字的字尾
  • b:光标回到上个字的开头
  • #l:光标移到该行的第#个位置,如:5l,56l
  • gg:进入到文本开始
  • ctrl+b:屏幕往“后”移动一页
  • ctrl+f:屏幕往“前”移动一页
  • ctrl+u:屏幕往“后”移动半页
  • ctrl+d:屏幕往“前”移动半页

删除

  • x:每按一次,删除光标所在位置的一个字符
  • #x:例如,「6x」表示删除光标所在位置的“后面(包含自己在内)”6个字符
  • X:大写的X,每按一次,删除光标所在位置的“前面”一个字符
  • #X:例如,「20X」表示删除光标所在位置的“前面”20个字符
  • dd:删除光标所在行
  • #dd:从光标所在行开始删除#行

last line mode 指令集

(在使用末行模式之前,请记住先按Esc键确定您已经处于正常模式,再按:冒号即可进入末行模式。)

列出行号

  • set nu: 显示行号
  • set nonu:去掉行号
    在这里插入图片描述

跳到文件中的某一行

  • #:# 号 表示一个数字,在冒号后输入一个数字,再按回车键就会跳到该行了,如输入数字13,再回车,就会跳到文章的第13行。
    在这里插入图片描述

查找字符

  • /关键字:先按「/」键,再输入想寻找的字符,如果第一次找的关键字不是想要的,可以一直按「n」会往后寻找到要的关键字为止。
  • ?关键字:先按「?」键,再输入想寻找的字符,如果第一次找的关键字不是想要的,可以一直按「n」会往前寻找到要的关键字为止。

问题:/ 和 ?查找有和区别?
在这里插入图片描述

保存文件

  • w: 在冒号输入字母「w」就可以将文件保存起来离开vim
  • q:退出,(q!强制离开vim
  • wq:保存并退出

ps.如何不退出,直接编译文件? 在底行模式下输入:
! gcc test2.c(当前文件的文件名)
! ls -l(这个命令之后可以看见生成了a.out的文件)
! ./a.out (运行编译生成的文件)


vim__117">vim 的配置

  1. 自己配置(不推荐)
    方法:在家目录下的 vimrc配置文件 中写入配置
  2. 自动化配置
    在这里插入图片描述
    在这里插入图片描述
    • 输入指令:curl -sLf https://gitee.com/HGtz2222/VimForCpp/raw/master/install.sh -o ./install.sh && bash ./install.sh
    • 输入 root 账户的密码
    • 开始安装

END


http://www.niftyadmin.cn/n/300559.html

相关文章

ES+Redis+MySQL 高可用架构设计

一、背景 二、ES高可用方案 三、会员Redis缓存方案 四、高可用会员主库方案 五、异常会员关系治理 六、展望:更精细化的流控和降级策略 一、背景 会员系统是一种基础系统,跟公司所有业务线的下单主流程密切相关。如果会员系统出故障,会…

​力扣解法汇总1010. 总持续时间可被 60 整除的歌曲

目录链接: 力扣编程题-解法汇总_分享记录-CSDN博客 GitHub同步刷题项目: https://github.com/September26/java-algorithms 原题链接: 力扣 描述: 在歌曲列表中,第 i 首歌曲的持续时间为 time[i] 秒。 返回其总持…

软件测试简历?面试题?企业面试官想要什么?我不再和offer失之交臂...

目录:导读 前言一、Python编程入门到精通二、接口自动化项目实战三、Web自动化项目实战四、App自动化项目实战五、一线大厂简历六、测试开发DevOps体系七、常用自动化测试工具八、JMeter性能测试九、总结(尾部小惊喜) 前言 软件测试面试题简历…

程序员最终会被自己开发的轮子所淘汰吗?

螺丝刀和扳手的发明,并没有让工人下岗; 工程机械(挖掘机等)的发明,也不会让建筑工人的需求量减少; 现代医学的各种先进设备,似乎也没有让医生数量大幅减少; …… 所以,关…

python中sort和sorted的高级排序技巧

Python list内置sort()方法用来排序,也可以用python内置的全局sorted()方法来对可迭代的序列排序生成新的序列。 1.排序基础 简单的升序排序是非常容易的。只需要调用sorted()方法。它返回一个新的list,新的list的元素基于小于运算符(__lt__)来排序。 …

三十、组播技术——IGMP、IGMP-snooping、PIM-DM、PIM-SM

文章目录 组播概述1、IP组播通信概念2、组播和单播ip地址3、组播MAC4、组播应用场景5、PIM、IGMP、IGMP-snooping 一、IGMP 协议二、PIM DM(密集模式)1、配置示例如下:2、PIM DM的局限性 三、PM SM(稀疏模式) 组播概述…

机电设备故障ar远程维修软件缩短生产线中断时间

电机属于工业生产中的关键设备之一,处于长期运转阶段,因此电机容易出现故障,极易增加企业生产成本,影响生产计划。引进AR远程维修技术效果显著。 AR远程维修技术是一种将虚拟信息与实际场景相结合的技术。当电机出现故障时&#x…

python读取用例

classmethod def get_excel_data(cls, excel_name, sheet_name, case_numNone):"""读取excel文件的方法:param excel_name: 文件名称:param sheet_name: sheet页的名称:param case_name: 执行的case名称:return:"""def get_row_data(table, row)…