Linux中 vim 编辑器的使用

文章目录


思维导图

前言

首先,了解一下 什么是vim 编辑器?在不同的系统中,文本的管理也会不同;windos系统就不多说了,这里主要是讲linux文本的编辑,顾名思义,linux的文本是通过 "vim" 来编辑的。

当然,Linux的编辑器可不止这一种,其还有图形模式的gedit、kwrite、openoffice等。


提示:以下是本篇文章正文内容,下面案例可供参考

一、vim编辑器模式

vim 编辑器内设有3种模式,命令模式、编辑模式、末行模式。进入vim编辑器后,三种模式之间是可以相互切换的。

  1. 命令模式:
    打开 Vim 后,默认进入的就是命令模式。

可以执行操作:

(1)移动光标(上、下、左、右箭头或其他移动快捷键)

(2)删除、复制、粘贴文本 查找和替换文本

(3)使用 /对文件执行各种全局操作

(4)切换到其他模式

  1. 编辑模式:
    编辑模式也可以称为插入模式,输入iao都可以从命令模式进入插入模式,退出插入模式时,只需要按键盘上的Esc键,退出即可,当然退出后是命令模式

从命令模式进入插入模式,可以通过按下以下任一键:

(1)i(在光标前插入)

(2)a(在光标后插入)

(3)o(在当前行下方新建一行并插入)

(4)O(在当前行上方新建一行并插入

  1. 末行模式:
    末行即是最后一行,从命令模式进入末行模式,通常通过按 : 键触发。在末行模式下,可以输入单行或多行的 Ex 命令.

执行诸如:

(1)文件保存及退出 (:w 写入文件,:q 退出,:wq 保存并退出,:q! 强制退出不保存)

(2)查找和替换:s/search/replace/

(3)设置选项:set nu 显示行号

(4)执行Shell命令:!cmd

(5)执行脚本或宏定义等高级操作。


二、简单的插入、保存和退出

/home 下新建一个 text 文本文件

c 复制代码
touch text.txt

使用 vim 编辑 text.txt

c 复制代码
vim text.txt 

进入后默认是命令行模式

要进入编辑模式(插入模式),需要输入开关命令,iao ,进入后输入hello world,

最后保存内容,可按键盘Esc键退出编辑模式,然后输入:wq退出vim编辑器

这样text.txt中就保存这 "hello world" 这个内容


三、 命令模式下常用命令即其作用

1. 命令模式

|---------|---------------------|-----------------------------------------|
| | 命令 | 作用 |
| 光标移动 | h | 向左移动光标一个字符 |
| 光标移动 | j | 向下移动光标一个字符 |
| 光标移动 | k | 向上移动光标一个字符 |
| 光标移动 | l | 向右移动光标一个字符 |
| 光标移动 | 0 | (数字零):移动到行首 |
| 光标移动 | $ | 移动到行尾 |
| 光标移动 | gg | 移动到文件首行 |
| 光标移动 | G | 移动到文件最后一行 |
| 光标移动 | Ctrl + f / PageDown | 向前翻页 |
| 光标移动 | Ctrl + b / PageUp | 向后翻页 |
| 光标移动 | H | 移动到屏幕顶部 |
| 光标移动 | M | 移动到屏幕中部 |
| 光标移动 | L | 移动到屏幕底部 |
| 文本复制与粘贴 | yy | 复制当前行 |
| 文本复制与粘贴 | nyy | (如3yy):复制接下来的n行 |
| 文本复制与粘贴 | p | 在光标下一行粘贴 |
| 文本复制与粘贴 | P | 在光标上一行粘贴 |
| 文本复制与粘贴 | "xy | 复制到寄存器x(x可以换成任意字母) |
| 文本复制与粘贴 | "xp | 从寄存器x中粘贴 |
| 文本删除 | x | 删除光标处的单个字符 |
| 文本删除 | dw | 删除光标到单词结尾 |
| 文本删除 | dd | 删除当前行 |
| 文本删除 | D | 从光标位置删除至行尾 |
| 文本删除 | ngg | ngg然后d(比如3dd):删除接下来的n行 |
| 文本替换 | r + 字符 | 替换光标下的单个字符 |
| 文本替换 | R | 进入替换模式,不断输入字符会替换光标后的所有字符直到按下Esc键/td> |
| 文本修改 | cw | 更改从光标开始到单词结尾的文本 |
| 文本修改 | cc | 更改整行 |
| 文本修改 | C | 从光标位置更改到行尾 |
| 撤销与重做 | u | 撤销最后一次更改 |
| 撤销与重做 | Ctrl + r | 重做(即撤销的反操作) |
| 搜索与替换 | /pattern | 向前搜索给定的模式(pattern/td> |
| 搜索与替换 | ?pattern | 向后搜索给定的模式 |
| 搜索与替换 | :%s/old/new/gc | 在整个文件中搜索old并替换为new,每处替换询问确认(c表示confirm) |
| 文件操作 | :w | 保存当前文件 |
| 文件操作 | :q | 退出Vim(如果没有更改则直接退出,如果有未保存的更改则无法退出) |
| 文件操作 | :q! | 强制退出,不保存任何更改 |
| 文件操作 | :wq | 保存并退出 |

相关推荐
莲动渔舟5 小时前
国产编辑器EverEdit - 扩展脚本:让EverEdit支持“批量查找”功能
编辑器·emeditor·notepad·everedit
cg50175 小时前
Spring Boot 的配置文件
java·linux·spring boot
暮云星影6 小时前
三、FFmpeg学习笔记
linux·ffmpeg
rainFFrain6 小时前
单例模式与线程安全
linux·运维·服务器·vscode·单例模式
GalaxyPokemon6 小时前
Muduo网络库实现 [九] - EventLoopThread模块
linux·服务器·c++
mingqian_chu7 小时前
ubuntu中使用安卓模拟器
android·linux·ubuntu
Liudef067 小时前
deepseek v3-0324实现SVG 编辑器
开发语言·javascript·编辑器·deepseek
GalaxyPokemon8 小时前
Muduo网络库实现 [十] - EventLoopThreadPool模块
linux·服务器·网络·c++
自由鬼8 小时前
开源虚拟化管理平台Proxmox VE部署超融合
linux·运维·服务器·开源·虚拟化·pve