Linux Vim的 命令大全

简介: Linux Vim的 命令大全

Vim 的历史

Vim 的历史可以追溯到 1991 年,它是由荷兰程序员 Bram Moolenaar 开发的。Vim 的全称是 Vi IMproved,顾名思义,它是对经典文本编辑器 Vi 的增强版。以下是 Vim 的发展历史及其背景介绍:

Vi 的诞生

要了解 Vim,首先要提到它的前身 Vi。Vi 是 UNIX 操作系统中的一种文本编辑器,由 Bill Joy 在 1976 年开发。Vi 的诞生初衷是为了提供一个可以在当时计算机资源受限的环境中使用的高效文本编辑器。Vi 的设计哲学强调键盘上的简洁快捷操作,减少依赖鼠标的交互,极大地提高了编辑文本的效率。


由于 Vi 是开源的,并且伴随 UNIX 的流行在多个操作系统中得到广泛应用,许多开发者和用户都对其功能提出了更多需求。然而,Vi 在早期版本中存在一些功能的局限性,这为 Vim 的诞生奠定了基础。


Vim 的诞生

Bram Moolenaar 于 1991 年发布了最初版本的 Vim,最初它是为 Amiga 计算机设计的。最初版本被称为 “Vi IMitation”,旨在模仿 Vi 的行为。随着时间推移,Moolenaar 添加了大量新功能,使其超越了 Vi 的功能,因而重命名为 Vi IMproved,即 Vim。


Vim 作为 Vi 的增强版,提供了许多原始 Vi 所缺乏的功能,例如:


多级撤销:Vi 只有单级撤销功能,而 Vim 支持无限撤销。

语法高亮:Vim 提供了语法高亮显示,帮助用户在编辑代码时更容易区分不同的语法元素。

可视模式:Vim 引入了可视模式,允许用户在选择文本后对其进行操作。

插件系统:Vim 支持插件,使其功能可以进一步扩展,适应各种需求。

这些改进使得 Vim 不仅是一个高效的文本编辑器,还成为了开发者、系统管理员等专业用户的首选工具之一。


Vim 的开源与发展

Bram Moolenaar 从 Vim 的早期版本开始就将其作为开源软件发布,并一直保持着对 Vim 的维护和更新。他还通过 Vim 推广慈善项目。他将用户捐款用于支持乌干达的儿童福利项目,尤其是帮助当地的儿童教育和基础设施建设。


随着时间的推移,Vim 社区不断壮大,越来越多的贡献者加入,推出了各种插件和配置,进一步扩展了 Vim 的功能。例如,Vim 的插件系统使得它能够支持 IDE 功能,如代码补全、错误检查等,使其成为了现代开发者的强大工具。


Vim 的影响力

Vim 的影响力不仅限于 Linux 和 UNIX 系统,它几乎可以在所有主流操作系统上运行,包括 Windows 和 macOS。Vim 的轻量级、高效特性使其在资源受限的环境中尤其受欢迎,许多服务器管理员依赖 Vim 进行快速的远程文件编辑。


Vim 的设计思想和模式编辑方式也影响了许多其他编辑器。许多现代文本编辑器(如 Sublime Text、Visual Studio Code 等)提供了 Vim 模式,让用户可以在这些编辑器中使用 Vim 的操作方式。


1.Vim 的基本模式

Vim 有三种主要的模式,每种模式对应不同的操作:

正常模式(Normal Mode):默认模式,用于浏览和修改文本。

插入模式(Insert Mode):用于插入和编辑文本。

命令模式(Command Mode):用于执行保存、退出、查找等命令。

进入 Vim

复制代码

vim filename

打开文件 filename,进入正常模式。如果文件不存在,Vim 会创建一个新文件。


2. 正常模式常用命令

进入 Vim 默认处于正常模式,可通过以下命令来快速导航和操作文本。


基本导航

h:光标左移一个字符

l:光标右移一个字符

j:光标下移一行

k:光标上移一行

w:跳到下一个单词的开头

b:跳到上一个单词的开头

gg:移动到文件开头

G:移动到文件结尾

0:移动到行首

$:移动到行尾

Ctrl + f:向下翻页

Ctrl + b:向上翻页

编辑文本

x:删除光标所在字符

dd:删除当前行

yy:复制当前行

p:粘贴复制或剪切的内容

u:撤销上一步操作

Ctrl + r:重做撤销的操作

r:替换当前字符

J:将当前行与下一行合并


:当前行右移

<<:当前行左移

搜索与替换

/pattern:搜索 pattern

n:跳转到下一个匹配结果

N:跳转到上一个匹配结果

:%s/old/new/g:全局替换所有 old 为 new

:%s/old/new/gc:全局替换,逐个确认

高效删除

dw:删除到下一个单词的开头

d$:删除至行尾

dgg:删除至文件开头

dG:删除至文件结尾


3. 插入模式

在正常模式下,通过以下命令进入插入模式:


i:在光标前插入

I:在行首插入

a:在光标后插入

A:在行尾插入

o:在当前行下方插入新行

O:在当前行上方插入新行

进入插入模式后,输入的文本将被插入文件中。完成后按 Esc 键返回正常模式。


4. 命令模式

在正常模式下,按 : 进入命令模式,执行各种文件操作命令。


文件操作

:w:保存文件

:q:退出 Vim

:wq:保存并退出

:q!:不保存强制退出

:w filename:将文件另存为 filename

:e filename:打开文件 filename

:r filename:将文件 filename 的内容插入到当前文件中

:set nu:显示行号

:set nonu:取消行号显示


5. 可视模式

按下 v 键进入可视模式,可以通过移动光标选择文本,进行批量操作。


v:字符选择

V:行选择

Ctrl + v:块选择

d:删除选择的文本

y:复制选择的文本


:右移选择的文本

<:左移选择的文本

6. 其他有用的命令

.:重复上一个命令

~:切换字符大小写

Ctrl + g:显示光标所在行与文件信息

:! command:执行外部命令,例如 :! ls 列出当前目录的文件

7. 自定义设置

你可以通过配置 .vimrc 文件,定制 Vim 的行为。例如,自动显示行号、设置缩进等。

set number           " 显示行号
set autoindent       " 自动缩进
set tabstop=4        " 将 Tab 设为 4 个空格
set shiftwidth=4     " 每次缩进为 4 个空格
set expandtab        " 将 Tab 替换为空格
syntax on            " 启用语法高亮


下载

下载https://www.vim.org/download.php

windows 下载

文档下载

目录
相关文章
|
1月前
|
Unix Linux 程序员
Linux文本搜索工具grep命令使用指南
以上就是对Linux环境下强大工具 `grep` 的基础到进阶功能介绍。它不仅能够执行简单文字查询任务还能够处理复杂文字处理任务,并且支持强大而灵活地正则表达规范来增加查询精度与效率。无论您是程序员、数据分析师还是系统管理员,在日常工作中熟练运用该命令都将极大提升您处理和分析数据效率。
112 16
|
23天前
|
Linux
linux命令—stat
`stat` 是 Linux 系统中用于查看文件或文件系统详细状态信息的命令。相比 `ls -l`,它提供更全面的信息,包括文件大小、权限、所有者、时间戳(最后访问、修改、状态变更时间)、inode 号、设备信息等。其常用选项包括 `-f` 查看文件系统状态、`-t` 以简洁格式输出、`-L` 跟踪符号链接,以及 `-c` 或 `--format` 自定义输出格式。通过这些选项,用户可以灵活获取所需信息,适用于系统调试、权限检查、磁盘管理等场景。
|
3月前
|
监控 Linux 网络安全
Linux命令大全:从入门到精通
日常使用的linux命令整理
678 13
|
4月前
|
Linux 网络安全 数据安全/隐私保护
使用Linux系统的mount命令挂载远程服务器的文件夹。
如此一来,你就完成了一次从你的Linux发车站到远程服务器文件夹的有趣旅行。在这个技术之旅中,你既探索了新地方,也学到了如何桥接不同系统之间的距离。
576 21
|
4月前
|
JSON 自然语言处理 Linux
linux命令—tree
tree是一款强大的Linux命令行工具,用于以树状结构递归展示目录和文件,直观呈现层级关系。支持多种功能,如过滤、排序、权限显示及格式化输出等。安装方法因系统而异常用场景包括:基础用法(显示当前或指定目录结构)、核心参数应用(如层级控制-L、隐藏文件显示-a、完整路径输出-f)以及进阶操作(如磁盘空间分析--du、结合grep过滤内容、生成JSON格式列表-J等)。此外,还可生成网站目录结构图并导出为HTML文件。注意事项:使用Tab键补全路径避免错误;超大目录建议限制遍历层数;脚本中推荐禁用统计信息以优化性能。更多详情可查阅手册mantree。
linux命令—tree
|
2月前
|
Linux 网络安全 开发工具
技术栈:这50条最常用的 Linux 命令你一定要会!
建议多在终端中实践,遇到不懂的命令就用 man 或 --help 了解详情!
411 0
|
4月前
|
监控 Linux
Linux系统中使用df命令详解磁盘使用情况。
`df`命令是Linux系统管理员和用户监控和管理磁盘空间使用的重要工具。掌握它的基本使用方法和选项可以帮助在必要时分析和解决空间相关问题。简洁但功能丰富,`df`命令确保了用户可以快速有效地识别和管理文件系统的空间使用情况。
279 13
|
2月前
|
安全 Linux Shell
Linux系统中sudo命令的高效运用技巧。
用户可以通过sudo -l来列出自己目前可执行的命令列表,这有助于用户了解自己的权限范围。
125 0
|
2月前
|
监控 Linux Shell
linux命令
常用 Linux 命令汇总
|
4月前
|
Unix Linux
linux命令—cd
`cd` 命令是 Linux/Unix 系统中用于切换工作目录的基础命令。支持相对路径与绝对路径,常用选项如 `-L` 和 `-P` 分别处理符号链接的逻辑与物理路径。实际操作中,可通过 `cd ..` 返回上级目录、`cd ~` 回到家目录,或利用 `cd -` 在最近两个目录间快速切换。结合 Tab 补全和 `pwd` 查看当前路径,能显著提升效率。此外,需注意特殊字符路径的正确引用及脚本中绝对路径的优先使用。