vim编辑器

vim编辑器

vim有三种模式,命令模式,插入模式,末行模式,在一开始的时候默认进入的是命令模式

命令模式

命令模式:默认的模式,该模式下有很多的快捷键

文件内移动

  • n+Shift+g(或nG)快速定位到指定的行,先按你想要的跳转的行,然后按G,如:7G,跳转到第7行
  • Shift+g(或者G)跳转到尾行
  • 0 跳转到该行首个字符
  • gg跳转到首行
  • :n 跳到指定行 n为指定的行号
  • Ctrl+G 报告光标位置
  • Ctrl+f 屏幕向前移动一页
  • Ctrl+b 屏幕向后移动一页
  • Ctrl+d 屏幕向前移动半页
  • Ctrl+u 屏幕向后移动半页
  • $ 跳转到该行最后一个字符
  • w 光标前移一字
  • b 光标倒退一字
  • +移动非空格的下一行
  • -移动非空格的上一行
  • H 移到当前屏幕最顶行
  • M 移到当前屏幕中央一行
  • L 移到当前屏幕最底行
  • G 移到文本最末行
  • n +回车(n表示数字)光标向下移动n行
  • j 光标向下移动一格
  • k 光标向上移动一格

行内移动

  • ^ 移动到行首
  • $ 移动到行尾
  • w、b键,分别表示向后和向前移动一个单词
  • h 光标向左移动一格
  • l 光标向右移动一格

删除字母

  • x 删除单个字母
  • nx 删除多个字符
  • dw 删除一个字符(剪切)

删除整行

  • dd 删除整行
  • D 删除光标所在行到末尾行的内容
  • ndd 删除多行
  • :n1,n2d删除指定行
  • dG 从当前行删除到文件尾
  • 想要删除该行末尾的回车,也就是两行合并为一行,使用Shift+j

剪切、复制、粘贴

  • dd 既是删除也是剪切,按p是粘贴至光标后,P是粘贴至光标前
  • yw 复制一个词
  • yy 复制单行
  • nyy 复制多行
  • p 粘贴,从当前行后面粘贴被复制的行
  • P 粘贴,从当前行前面粘贴被复制的行

撤销

  • u 撤销修改
  • Ctrl+r 反撤销
  • :u! 恢复到文档初始状态

替换

  • r 替换光标所在处的字母
  • R 进入替换模式,从光标所在处开始替换字符,按esc结束
  • 查找,按下/键,然后输入所要查找的字符,按回车,如果找到光标会跳转到第一个搜索结果的位置,然后按n,继续向下查找,如果按Shift+n,会反向向上查找

插入模式

插入模式(输入模式):可以向文件中输入字符的模式。

在命令模式下,

  • 按a 在光标所在位置后插入(追加)
  • 按i 在光标所在位置前插入(插入)
  • 按A 在光标所在行尾插入
  • 按I 在光标所在行首插入
  • 按o 在光标上插入新行
  • 按O 在光标上插入新行

按Esc退出输入模式,进入命令模式

末行模式

末行模式:该模式下,在vim界面最下边可以输入命令,来执行各种操作,编辑完文件之后,想要保存修改或者不保存修改都需要进入末行模式来进行操作,从命令模式切到底末模式,按:(冒号)进入末行模式

文件编辑

  • :w 保存文件但不退出vi
  • :w 文件名 将修改另外保存到新的文件中,不退出vi
  • new 文件名 如果该文件存在则打开该文件,如果不存在,则新建(只有保存之后该文件才会创建成功)
  • :w! 强制保存,不退出vi
  • :wq 保存文件并退出vi
  • :wq! 强制保存文件,并退出vi
  • :q 不保存文件,退出vi
  • :q! 不保存文件,强制退出vi
  • :e! 放弃所有修改,从上次保存文件开始再编辑

参数设置

  • :set nu 显示行号
  • :set nonu 隐藏行号
  • :set list 显示特殊符号(Tab用^I表示,换行符用$显示)
  • :set nolist 不显示特殊符号

查找

  • /查找内容 从光标处往下查找
  • ?查找内容 从光标处往上查找
  • n 下一个
  • N 上一个

替换

  • :s/old/new 当前行的第一个old替换为new

  • :s/old/new/g 替换当前行的所有old为new

  • :1,10s/old/new 将1到10行的每一行的第一个old替换为new,如果使用1,$则是从第一行到最后一行

  • :1,10s/old/new/g 替换1到10行的所有old为new,如果使用1,$则是从第一行到最后一行

  • :%s/old/new/g 替换全文的所有old为new

    #1到10行添加注释# (使用^是因为^在正则中表示行首)
    :1,10s/^/#/g
    #1到10行取消注释# (使用^是因为^在正则中表示行首)
    :1,10s/^#//g

可以在vim中执行shell,而不退出vi

使用:!命令来实现

:!pwd 来显示当前目录路径名

https://zhhll.icu/2021/linux/基础/vim编辑器/

本文由mdnice多平台发布

相关推荐
大模型八哥21 小时前
大模型扫盲系列——大模型实用技术介绍(上)
人工智能·程序人生·ai·大模型·llm·llama·ai大模型
HHHTTY-3 天前
开启AI新篇章:探索GPT-4与大模型!订阅方案!简单支付!
人工智能·经验分享·python·深度学习·程序人生·机器学习·课程设计
龙之叶3 天前
文字的力量
程序人生
影雀4 天前
爬虫设计思考之一
程序人生
mysqloffice4 天前
[大象快讯]:PostgreSQL 17 重磅发布!
程序人生
哲伦贼稳妥5 天前
面试经验分享
经验分享·程序人生·其他·职场和发展·电脑
web_learning_3215 天前
python开源代码自学问题解决(requests+openpyxl+pymysql)
开发语言·python·程序人生·学习方法
独泪了无痕5 天前
帝都程序猿十二时辰
程序人生
微刻时光5 天前
影刀RPA实战:Excel拆分与合并工作表
笔记·程序人生·自动化·excel·rpa·影刀
Y_3_76 天前
RabbitMQ 概述及安装 : 程序之间沟通的桥梁
开发语言·分布式·后端·程序人生·中间件·rabbitmq·学习方法