Linux vi/vim 教程

文章目录

  • [【 1. vi/vim 的三种模式 】](#【 1. vi/vim 的三种模式 】)

    • [1.1 命令模式](#1.1 命令模式)
    • [1.2 输入模式](#1.2 输入模式)
    • [1.3 底线命令模式](#1.3 底线命令模式)
  • [【 2. 实例 】](#【 2. 实例 】)

  • [【 3. vim 的其他命令 】](#【 3. vim 的其他命令 】)

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

  • 目前我们使用比较多的是 vim 编辑器。vim 从 vi 发展出来,vim 具有程序编辑的能力,可以主动的以字体颜色辨别语法的正确性,方便程序设计。

【 1. vi/vim 的三种模式 】

  • 基本上 vi/vim 共分为三种模式,命令模式(Command Mode)、输入模式(Insert Mode)和命令行模式(Command-Line Mode)。

1.1 命令模式

  • 用户刚刚启动 vi/vim, 默认进入命令模式(也称普通模式)。
  • 此状态下敲击键盘动作会被 Vim 识别为命令,而非输入字符,比如我们此时按下 i,并不会输入一个字符,i 被当作了一个命令。
  • 命令模式只有一些最基本的命令,因此仍要依靠底线命令行模式输入更多命令。
  • 以下是命令模式常用的几个命令:
命令 作用
i 切换到输入模式,在光标当前位置开始输入文本。
: (英文冒号) 切换到底线命令模式,以在最底一行输入命令。
x 删除当前光标所在处的字符。
a 进入插入模式,在光标下一个位置开始输入文本。
o 在当前行的下方插入一个新行,并进入插入模式。
O 在当前行的上方插入一个新行,并进入插入模式。
dd 删除当前行。
yy 复制当前行。
p(小写) 粘贴剪贴板内容到光标下方。
P(大写) 粘贴剪贴板内容到光标上方。
u 撤销上一次操作。
Ctrl + r 重做上一次撤销的操作。
:w 保存文件。
:q 退出 Vim 编辑器。
:q! 强制退出Vim 编辑器,不保存修改。

1.2 输入模式

  • 输入模式中,常用操作:
操作 作用
Esc 退出输入模式,切换到命令模式
字符按键以及Shift组合 输入字符
Enter 回车键,换行
Backspace 退格键,删除光标前一个字符
Delete 删除键,删除光标后一个字符
方向键 在文本中移动光标
HOME/END 移动光标到行首/行尾
Page Up/Page Down 上/下翻页
Insert 切换光标为输入/替换模式,光标将变成竖线/下划线

1.3 底线命令模式

  • 底线命令模式可用的命令非常多。
  • 按 ESC 键可随时退出底线命令模式。
  • 在底线命令模式中,常用的命令有(已经省略了冒号):
命令 作用
:w 保存文件。
:q 退出 Vim 编辑器。
:wq 保存文件并退出 Vim 编辑器。
:q! 强制退出Vim编辑器,不保存修改。

【 2. 实例 】

  • 1. 进入到 vi/vim
    在 Shell 中输入如下命令,默认进入 命令模式。
cpp 复制代码
vi  test.txt


当对话框中下方显示 New File 时,则表示此文件不存在,vim 编辑器新建了一个文件。如果没有显示,New File则表示文件存在。

  • 2. 进入输入模式
    按下 i 进入输入模式。这个时候,键盘上除了 Esc 这个按键之外,其他的按键都可以视作为一般的输入按钮了,所以我们可以进行任何的编辑。
  • 3. 返回命令模式
    按下 Esc 这个按钮即可,马上我们就会画面左下角的 -- INSERT -- 不见了,即可以表示进入了命令模式。
  • 4. 在命令模式中按下 :wq 再换行表示储存后离开 vim
  • 5. 最后返回到 Shell

【 3. vim 的其他命令 】

Linux vi/vim

相关推荐
淮北4942 小时前
vim学习进阶
学习·编辑器·vim
maosheng11462 小时前
RHCSA的第一次作业
linux·运维·服务器
wifi chicken2 小时前
Linux 端口扫描及拓展
linux·端口扫描·网络攻击
旺仔.2913 小时前
Linux 信号详解
linux·运维·网络
放飞梦想C3 小时前
CPU Cache
linux·cache
Hoshino.413 小时前
基于Linux中的数据库操作——下载与安装(1)
linux·运维·数据库
播播资源5 小时前
CentOS系统 + 宝塔面板 部署 OpenClaw源码开发版完整教程
linux·运维·centos
源远流长jerry5 小时前
在 Ubuntu 22.04 上配置 Soft-RoCE 并运行 RDMA 测试程序
linux·服务器·网络·tcp/ip·ubuntu·架构·ip
lay_liu6 小时前
Linux安装redis
linux·运维·redis
寂柒7 小时前
序列化与反序列化
linux·网络