【Linux_vim】Vim编辑器的使用方法及常见指令

一、 什么是 Vim

Vim 是一款功能强大的文本编辑器,是 Unix 和类 Unix 系统下的一种文本编辑器。Vim 是 Vi 编辑器的改进版,Vi 是最早出现于 Unix 系统的一款文本编辑器,而 Vim(Vi IMproved)在 Vi 的基础上增加了许多功能和改进,成为了一个功能更加强大、灵活且易于扩展的文本编辑器。
vim键盘图

二、vi/vim 的使用

vi/vim基本上可以分为三种模式,命令/普通/正常模式插入模式底行模式,各模式的功能区分如下:

  • 命令模式/普通/正常模式(Command Mode)

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

  • 插入模式(Insert Mode)

只有在插入模式下,才可以做文字输入,按ESC键可回到命令行模式。该模式是我们后面用的最频繁的编辑模式。

  • 底行模式(Last Line Mode)

文件要保存或者退出,也可以进行文件替换,找字符串,列出行号等操作。在命令行模式下,shift + : 即可进入该模式。

具体三种模式转换关系如下图:

vim 模式切换

2.1 命令模式/普通/正常模式(Command Mode)

当用户刚刚启动 vi/vim 时,便进入了命令模式。此状态下敲击键盘动作被 Vim 识别为命令,而非字符,比如我们此时输入o,并不会输入一个字符,o被当作了一个命令。以下是命令模式下常用的命令:

1. 光标移动命令

  • h:向左移动光标
  • j:向下移动光标
  • k:向上移动光标
  • l:向右移动光标
  • w:按照 “单词” 在行内往后移动
  • b:按照 “单词” 在行内往前移动
  • shift + ^:光标定位到当前行的最左侧开头处 锚点
  • shift + $:光标定位到当前行的最右侧结尾处 锚点
  • gg:跳到文件开头
  • shift + g:跳到文件的末尾

2. 文本编辑命令

  • n + x:删除光标所在位置的字符,n表示数量,即删除的字符数
  • n + X:删除光标左侧所在位置的字符,n表示数量,即删除的字符数
  • n + yy:复制当前行,n表示数量,即复制的行数
  • n + p:粘贴剪切或复制的文本,n表示数量,即粘贴的文本数量
  • n + dd:删除当前行,n表示数量,即删除的行数
  • u:撤销编辑操作
  • ctrl + r:对撤销进行撤销
  • .:重复上一次操作
  • ~:大小写快速切换

3. 查找与替换命令

  • n + r:替换当前光标所在字符,n表示数量,即替换的字符数
  • R:进入替换模式
  • #:高亮要查找的函数名
  • n:下一个查找到的函数/字符串名
  • /pattern:向后查找指定模式。
  • ?pattern:向前查找指定模式。
  • s/search/replace/g:替换搜索到的内容。
  • s/search/replace/gc:替换搜索到的内容,但需确认每次替换。

2.2 插入模式

在命令模式下,按下 i 就进入了输入模式,使用 ESC 键就可以返回到普通模式。在输入模式中,可以使用以下按键:

  • 字符案件以及 shift 组合:输入字符
  • ENTER键:回车键、换行
  • BACK SPACE:退格键,删除光标前一个字符
  • DEL:删除键,删除光标后一个字符
  • 方向键:在文本中移动光标
  • HOME/END:移动光标到行首/行尾
  • Page Up/Page Down:上/下翻页
  • Inset:切换光标为输入/替换模式,光标变成竖线/下划线
  • ESC:退出输入模式,切换到命令模式

2.3 底行模式

在 Vim 的底行模式下,可以执行各种操作,如保存文件、搜索文件、替换文本等。以下是一些常用的Vim底行模式下的命令及其作用:

1. 保存和退出

  • :w:保存文件但并退出
  • :w 文件名:将文件保存为指定文件名
  • :q:退出 Vim
  • :q!:强制退出,不保存修改
  • wq 或 :x:保存并退出

2. 显示行号、鼠标操作

  • set number:显示行号
  • set nonumber:隐藏行号
  • set mouse=a:设置鼠标操作
  • set 选项:设置 vim 选项,如set number设置显示行号

3. 移动光标

  • n:跳转到第 n 行
  • $:跳转到文件末尾
  • 1:跳转到文件开头

4. 文件操作

  • :e 文件名:打开另一个文件进行编辑
  • :r 文件名:将另一个文件的内容插入到当前的文件中
  • :sav 文件名:另存为指定文件名

5. 执行外部命令

  • :! command:执行外部命令,如::!ls显示当前目录文件列表

三、总结

总的来说,Vim是一款功能强大、高效的文本编辑器,尤其适合程序员和系统管理员等需要频繁编辑文本文件的用户使用。虽然学习曲线较陡,但一旦掌握了Vim的基本操作,将会极大地提高文本编辑的效率和便捷性。

  • 15
    点赞
  • 24
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
vim编辑器指令壁纸是一个在vim编辑器中常用的指令集合,可以作为壁纸显示在编辑器界面上,以方便用户查看和记忆。这些指令包括: 1. vim 打开编辑器并显示版本信息页面。 2. vim filename 使用vim编辑器打开filename文件。 3. 前言 作为开发者,有两个顶级编辑器,即使你不用,你也一定要知道它们是什么——编辑器之神——Vim和神的编辑器——Emacs。 4. 用户刚刚启动vim编辑文件时,便进入了命令模式。 5. 它们都是多模式编辑器,不同的是vim是vi的升级版本,它不仅兼容vi的所有指令,而且还有一些新的特性在里面。 这些指令可以帮助用户在vim编辑器中进行文本编辑、搜索替换、移动光标、保存退出等操作。通过熟练掌握这些指令,用户可以更高效地使用vim编辑器进行编程开发和文本处理。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [Vim编辑器实用指令](https://blog.csdn.net/Smile_Bit_Seven/article/details/126094603)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 33.333333333333336%"] - *2* [Vim编辑器常用的命令总结](https://download.csdn.net/download/weixin_38685694/14891463)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 33.333333333333336%"] - *3* [详解Linux常用命令的用法(二)————文本编辑器命令vi/vim](https://download.csdn.net/download/weixin_38723373/14890457)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 33.333333333333336%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

自然语言编程

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值