Linux 基础入门操作 前言 VIM的基本操作 2

1 VIM的背景介绍

Vi 的诞生与1976年,Vim 的前身是 Vi(Visual Editor),由 Bill Joy 在 BSD Unix 系统上开发,作为 ed(行编辑器)的改进版本,提供全屏编辑功能,成为 Unix/Linux 系统的标准文本编辑器。

Vim 的诞生1991年,Vi 虽然强大,但功能有限。1991年,Bram Moolenaar 基于 Vi 开发了 Vim(Vi IMproved),增加了多级撤销、语法高亮、跨平台支持等特性,并逐步成为最流行的 Vi 增强版本。

目前开源与社区发展,Vim 是开源软件(遵循 GPL 协议),拥有活跃的开发者社区,至今仍在持续更新(最新稳定版为 Vim 9.0,2022年发布)。Vim 是终端环境下的高效编辑器,凭借其极简设计和强大的可扩展性,在开发者中经久不衰。尽管学习成本较高,但熟练使用后编辑速度远超常规编辑器,尤其适合服务器维护和键盘流编程。

它的特点如下:

  1. 模态编辑(Modal Editing):

    Vim 的核心设计是模式分离(普通模式、插入模式、可视模式等),减少手指移动,提升编辑效率。

  2. 键盘优先:

    几乎所有操作均可通过键盘完成,避免依赖鼠标,适合快速文本处理。

  3. 可扩展性:

    支持插件(通过 .vimrc 配置)和脚本(Vimscript/Lua),可定制成 IDE(如搭配 LSP)

1.1 VIM的用途

Vim 是一款功能强大的文本编辑器,学习曲线较陡,但掌握基本操作后效率会大幅提升。它用途如下:

  1. 系统管理员与开发者:

默认预装在大多数 Linux/Unix 和 macOS 系统中(vi 通常是 Vim 的别名)。常用于配置文件编辑(如 /etc/nginx/nginx.conf)、远程服务器调试(通过 SSH)。

  1. 程序员:

高效编写代码(支持语法高亮、自动补全插件如 coc.nvim)。与版本控制工具(Git)结合(如 fugitive.vim)。

  1. 写作与日志:

纯文本编辑(Markdown、LaTeX 支持),适合无干扰写作。

1.2 VIM的安装

在ubuntu 环境下面的安装

bash 复制代码
sudo apt update
sudo apt install vim          # 安装基础版
sudo apt install vim-gtk3    # 安装图形化版本(GVim)

1.3 其它常用的编辑器

(1) Nano

特点:简单易用,适合新手,快捷键提示在屏幕底部。

bash 复制代码
sudo apt install nano    # Debian/Ubuntu
sudo dnf install nano   # RHEL/Fedora
sudo pacman -S nano     # Arch Linux

(2)Micro

特点:现代化终端编辑器,支持鼠标操作、语法高亮、多光标。

bash 复制代码
curl https://getmic.ro | bash  # 一键安装
sudo mv micro /usr/local/bin  # 添加到 PATH

1.4 总结

  1. 服务器/终端:Vim、Nano、Micro

  2. 桌面环境:VS Code、Kate、Sublime Text

  3. 极客/可定制:Emacs、Neovim、Helix

2 VIM 常见指令

VIM 一共有四种模式。

  1. 普通模式(Normal Mode):默认模式,用于导航和操作文本。从其他模式按 Esc 返回普通模式。

  2. 插入模式(Insert Mode):输入文本。 从普通模式按 i(光标前插入)、a(光标后插入)、o(下一行插入)等进入。

  3. 可视模式(Visual Mode):选择文本。 按 v(字符选择)、V(行选择)、Ctrl+v(块选择)。

  4. 命令模式(Command Mode):执行命令(如保存、退出)。从普通模式按 : 进入。

2.1 普通模式-- 移动光标

  1. 基本移动:也可以使用箭头来移动

h(左)、j(下)、k(上)、l(右)。

w(下一个单词开头)、b(上一个单词开头)。

0(行首)、^(行首非空格)、$(行尾)。

  1. 翻页:

Ctrl+f(下一页)、Ctrl+b(上一页)。

  1. 跳转:

gg(文件开头)、G(文件结尾)、行号+G(跳转到指定行)。

2.2 编辑模式

  1. 删除:

x(删除当前字符)或者del、dw(删除单词)、dd(删除整行)。

  1. 复制/粘贴:

yy(复制行)、p(粘贴到光标后)、P(粘贴到光标前)。

  1. 撤销/重做:

u(撤销)、Ctrl+r(重做)。

  1. 替换:

r(替换单个字符)、cw(替换单词)、:%s/old/new/g(全局替换)。

2.3 命令模式

  1. 保存、退出
    :w 保存文件。

:q 退出(未修改时)。

:q! 强制退出(不保存修改)。

:wq 或 :x 保存并退出。

:e 文件名 打开其他文件。

  1. 搜索:

/关键词 向下搜索,?关键词 向上搜索。

按 n(下一个匹配)、N(上一个匹配)。

  1. 替换:

😒/old/new 替换当前行第一个匹配。

😒/old/new/g 替换当前行所有匹配。

:%s/old/new/g 全局替换。

2.4 可视模式

选择文本后进行编辑(删除、复制、缩进等)。

2.5 配置

  1. vim ~/.vimrc 打开文件
  2. 添加以下语句
bash 复制代码
set number          " 显示行号
syntax on           " 语法高亮
set tabstop=4       " Tab缩进4空格
set expandtab       " Tab转空格
相关推荐
REDcker16 分钟前
Linux 进程资源占用分析指南
linux·运维·chrome
samroom18 分钟前
Linux系统管理与常用命令详解
linux·运维·服务器
PKNLP20 分钟前
07.docker介绍与常用命令
运维·docker·容器
Mxsoft6191 小时前
电力系统AR远程运维与数字孪生交互技术
运维·ar
一叶之秋14121 小时前
Linux基本指令
linux·运维·服务器
码割机1 小时前
Linux服务器安装jdk和maven详解
java·linux·maven
亚林瓜子1 小时前
在amazon linux 2023上面源码手动安装tesseract5.5.1
linux·运维·服务器·ocr·aws·ec2
爱学习的大牛1231 小时前
Ubuntu 24.04 安装 FreeSWITCH 完整教程
linux·freeswitch
FreeBuf_2 小时前
研究人员披露 Windows SMB 服务器权限提升漏洞(CVE-2025-58726)
运维·服务器·windows
go_bai2 小时前
Linux--进程池
linux·c++·经验分享·笔记·学习方法