百度
360搜索
搜狗搜索

linux中vi和vim命令详细介绍

在 Linux 中,vi 是一款经典的文本编辑器,而 vim 是其增强版本(vi iMproved),支持更多高级功能(如语法高亮、代码补全、多窗口等)。以下是两者常用的操作命令:

一、基本模式

1.
命令模式(Normal Mode)

刚进入 vi/vim 时默认处于命令模式,用于导航、编辑、执行命令。

  • 移动光标

    • h(左)、j(下)、k(上)、l(右)
    • 0^:跳转到行首;$:跳转到行尾
    • w/W:向后跳一个单词(W 忽略标点);b/B:向前跳一个单词
    • G:跳转到文件末尾;gg1G:跳转到文件开头
    • nG:跳转到第 n 行(如 10G 到第 10 行)
    • Ctrl + f:向下翻页;Ctrl + b:向上翻页

  • 文本操作

    • x:删除光标处字符;nx:删除连续 n 个字符
    • dd:删除当前行;ndd:删除从当前行开始的 n
    • d + 移动命令:删除从光标到目标位置的内容(如 d$ 删除到行尾,dw 删除单词)
    • y(复制)、p(粘贴):用法类似 d,如 yy 复制当前行,np 粘贴 n
    • u:撤销操作;Ctrl + r:重做撤销的操作
    • r:替换光标处字符(输入 r + 新字符);R:进入替换模式(按 Esc 退出)

  • 可视化模式

    • v:进入字符可视化模式,选中光标移动过的字符
    • Shift + v:进入行可视化模式,选中整行
    • Ctrl + v:进入块可视化模式,选中矩形区域

2.
插入模式(Insert Mode)

从命令模式输入以下命令进入插入模式,用于输入文本:

  • i:在光标前插入;I:在行首插入
  • a:在光标后追加;A:在行尾追加
  • o:在当前行下方新建一行插入;O:在当前行上方新建一行插入
  • ESC:退出插入模式,返回命令模式

3.
底行模式(Command Line Mode)

在命令模式输入 : 进入底行模式,用于执行文件操作、搜索、设置等:

  • 文件操作

    • :w:保存文件(:w 文件名 另存为新文件)
    • :q:退出(未修改时可用,若修改过需 :q! 强制退出不保存)
    • :wq:x:保存并退出
    • :e 文件名:打开新文件编辑
    • :r 文件名:将另一个文件的内容插入到当前文件光标处

  • 搜索与替换

    • :/关键词:向下搜索关键词(?关键词 向上搜索)
    • :n:跳转到下一个搜索结果;:N:跳转到上一个
    • :%s/旧内容/新内容/g:全局替换(% 表示全文,g 表示每行替换所有匹配项)
    • :s/旧内容/新内容:仅替换当前行第一个匹配项

  • 其他设置

    • :set nu:显示行号;:set nonu:取消行号
    • :set syntax=on:开启语法高亮(vim 支持,vi 不支持)
    • :set tabstop=4:设置制表符宽度为 4 个空格

二、实用技巧(vim 扩展功能)

  1. 多窗口操作vim 特有):

    • :split 文件名Ctrl + w + s:水平分割窗口
    • :vsplit 文件名Ctrl + w + v:垂直分割窗口
    • Ctrl + w + h/j/k/l:在窗口间切换(对应左 / 下 / 上 / 右)

  2. 代码补全vim 支持):

    • 在插入模式下,输入部分代码后按 Ctrl + pCtrl + n 触发关键词补全。

  3. 宏录制

    • qa:开始录制宏到寄存器 a
    • 执行需要录制的操作
    • q:停止录制
    • @a:回放寄存器 a 中的宏

三、vi 与 vim 的区别

特性 vi vim
语法高亮 不支持 支持(需配置或默认开启)
插件系统 不支持 支持(通过 ~/.vimrc 配置)
多窗口编辑 不支持 支持
正则表达式功能 基础 更强大(兼容 Perl 风格)
撤销历史 仅当前会话 可保存到文件(持久化)

四、常用场景示例

  1. 编辑文件:bash
     文件名.txt  

    912 文件名.txt

  2. 快速删除 / 复制多行
    • 命令模式下输入 5dd 删除 5 行,5yy 复制 5 行,再用 p 粘贴。

  3. 替换全文关键词:vim
    soldgc  # 每次替换前询问(加 `` 确认)

    912:%s/old/new/gc # 每次替换前询问(加 `c` 确认)

阅读更多 >>>  linux的x文件怎么打开

掌握这些基本命令后,可通过 vimtutor 命令(vim 内置教程)进一步学习进阶用法。vi/vim 是 Linux 下高效的文本编辑工具,熟练使用后能大幅提升代码编写和文本处理效率。

网站数据信息

"linux中vi和vim命令"浏览人数已经达到23次,如你需要查询该站的相关权重信息,可以点击进入"Chinaz数据" 查询。更多网站价值评估因素如:linux中vi和vim命令的访问速度、搜索引擎收录以及索引量、用户体验等。 要评估一个站的价值,最主要还是需要根据您自身的需求,如网站IP、PV、跳出率等!