热门标签 | HotTags
当前位置:  开发笔记 > 运维 > 正文

编辑器之神:VIM常用命令整理

VIM常用命令整理1.最近被vim一些小命令卡住了,网上搜了一搜资料都是残缺不全的。立志整理出来一些,并以此来彻底让自己掌握vim常用命令,实践一下这款被称为编辑器之神的编辑器2.本文将持续更

VIM 常用命令整理

1.最近被vim一些小命令卡住了,网上搜了一搜资料都是残缺不全的。立志整理出来一些,并以此来彻底让自己掌握vim常用命令,实践一下这款被称为编辑器之神的编辑器

2. 本文将持续更新补充;学习建议:这种命令需要多加练习+记忆的方式,熟能生巧;

正文:

  1. vim -- 被称为“编辑器之神”,在Linux系统中基本是默认安装的,适用于小型程序的快速编写。

  2. 三种模式:命令模式、编辑模式/插入模式、末行模式。

    • 其中命令模式是默认模式,也是其他两种模式进行转换的中介模式,必须按Esc回到命令模式之后进行转换。

    • 命令-->编辑:i -- 插入模式,光标前;I -- 行首;a -- 插入模式,光标后;A -- 行末;o -- 向下新开一行,插入行首;O -- 向上新开一行,插入行首;

    • 命令-->末行:按: 后加,w -- 保存;q -- 退出(强制退出); wq -- 保存并退出,等价于x 。

    3.命令模式

    3.1 移动光标:

    h,j,k,l -- 分别对应光标:左,下,上,右移

    M -- 光标移动到中间行;

    L -- 光标移动到最后一行行首;

    gg -- 光标移动到文件开头;

    G -- 光标移动到文件末尾;

    G -- 移动到指定行,格式:行号+space键+G

    w -- 向后一次移动一个字;

    b -- 向前一次移动一个字;

    { -- 按段落移动,上移

    } -- 按段落移动,下移;

    Ctrl + d -- 向下翻半屏

    Ctrl + u -- 向上翻半屏

    Ctrl + f -- 向下翻一屏

    Ctrl + b -- 向上翻一屏

    3.2 删除命令:

    x -- 删除光标后一个字符,相当于del

    X -- 删除光标前一个字符,相当于 Backspace

    dd -- 删除光标所在行,n dd 删除指定n的行数,从当前行算起向下n行;

    D -- 删除光标后本行的所有内容,包含光标所在字符;

    d0 -- 删除光标前本行所有内容,不包含光标所在字符。 注:这里是数字0

    dw -- 删除光标开始位置的字,包含光标所在字符。

    3.3 撤销和反撤销

    u -- 一步步撤销

    Ctrl + r -- 反撤销

    3.4 重复命令

    . -- 重复上一次操作的命令

    3.5 文本行移动

    >> -- 文本行右移;

    <<-- 文本行左移

    3.6 复制粘贴

    yy -- 复制当前行, n yy 复制 n 行;

    p -- 在光标所在位置向下新开辟一行,粘贴;

    3.7 可视模式

    v -- 按字符移动,选中文本;

    V -- 按行移动,选中文本可视模式可以配合d, y ,>> , <<实现对文本块的删除,复制,右移,左移。

    3.8 替换操作:

    r -- 替换当前字符

    R -- 替换当前行光标后的字符

    3.9 查找命令:

    / -- str查找

    n -- 下一个

    N -- 上一个

    3.10 替换命令:

    把abc全部替换成123

    末行模式下,将当前文件中所有的abc替换成123

    : %s/abc/123/g

    末行模式下,将第一行至第五行之间的abc替换成123

    :1,5s/abc/123/g

    3.11 vim里面执行shell下命令:

    末行模式里输入!,后面跟命令


推荐阅读
  • 本文详细介绍了VIM的基础操作和常用快捷键,VIM作为Unix及类Unix系统中的一款经典文本编辑器,源自VI的改进与发展。其简洁的界面和强大的扩展性使其在开发者中备受青睐,同时也催生了多个适用于Windows平台的版本。通过图文并茂的方式,帮助读者快速掌握VIM的核心功能与使用技巧。 ... [详细]
  • Linux基础知识:Vi与Vim编辑器详解
    Linux基础知识:Vi与Vim编辑器详解 ... [详细]
  • 七款高效编辑器与笔记工具推荐:KindEditor自动换行功能解析
    本文推荐了七款高效的编辑器与笔记工具,并详细解析了KindEditor的自动换行功能。其中,轻笔记QingBiJi是一款完全免费的记事本软件,用户可以通过其简洁的界面和强大的功能轻松记录和管理日常事务。此外,该软件还支持多平台同步,确保用户在不同设备间无缝切换。 ... [详细]
  • 1.tarzxfapache-activemq-5.12.0-bin.tar.gztarzxfapache-activemq-5.12.0-bin.tar.gz2.cdapac ... [详细]
  • 本文详细介绍了如何在 Linux 系统上安装 JDK 1.8、MySQL 和 Redis,并提供了相应的环境配置和验证步骤。 ... [详细]
  • Vim 编辑器功能强大,但其默认的配色方案往往不尽如人意,尤其是注释颜色为蓝色时,对眼睛极为不友好。为了提升编程体验,自定义配色方案显得尤为重要。通过合理调整颜色,不仅可以减轻视觉疲劳,还能显著提高编码效率和兴趣。 ... [详细]
  • FreeBSD环境下PHP GD库安装问题的详细解决方案
    在 FreeBSD 环境下,安装 PHP GD 库时可能会遇到一些常见的问题。本文详细介绍了从配置到编译的完整步骤,包括解决依赖关系、配置选项以及常见错误的处理方法。通过这些详细的指导,开发者可以顺利地在 FreeBSD 上完成 PHP GD 库的安装,确保其正常运行。此外,本文还提供了一些优化建议,帮助提高安装过程的效率和稳定性。 ... [详细]
  • 在 Linux 环境下,多线程编程是实现高效并发处理的重要技术。本文通过具体的实战案例,详细分析了多线程编程的关键技术和常见问题。文章首先介绍了多线程的基本概念和创建方法,然后通过实例代码展示了如何使用 pthreads 库进行线程同步和通信。此外,还探讨了多线程程序中的性能优化技巧和调试方法,为开发者提供了宝贵的实践经验。 ... [详细]
  • Vi编辑器的工作模式有哪些?如何在不同模式间切换?
    Vi编辑器是Linux系统中常用的文本编辑工具,具备三种主要工作模式:命令模式、插入模式和底行模式。用户可以通过特定的按键组合在这些模式之间进行切换,以实现不同的编辑功能。例如,在命令模式下,用户可以执行移动光标、删除文本等操作;而在插入模式下,则可以输入或修改文本内容。底行模式则用于执行保存文件、退出编辑器等命令。 ... [详细]
  • 在开发过程中,我最初也依赖于功能全面但操作繁琐的集成开发环境(IDE),如Borland Delphi 和 Microsoft Visual Studio。然而,随着对高效开发的追求,我逐渐转向了更加轻量级和灵活的工具组合。通过 CLIfe,我构建了一个高度定制化的开发环境,不仅提高了代码编写效率,还简化了项目管理流程。这一配置结合了多种强大的命令行工具和插件,使我在日常开发中能够更加得心应手。 ... [详细]
  • Linux Shell变量初探:初始值解析与使用指南
    本文探讨了Linux Shell中变量的基本概念及其在BASH中的应用。变量是用于存储可变数据的标识符,能够代表不同的值。文章详细介绍了BASH shell的主要优势,包括强大的命令编辑能力、自动补全功能、命令别名设置、作业控制以及前后台任务管理。此外,还涵盖了编程脚本编写和通配符的使用方法,为初学者提供了全面的指导。 ... [详细]
  • PHP与MySQL的Web应用开发技术深入解析
    PHP与MySQL的Web应用开发技术深入解析 ... [详细]
  • 在VMware虚拟机中部署带有中文图形界面的CentOS 7 Linux系统
    本文详细介绍了在VMware虚拟机中部署带有中文图形界面的CentOS 7 Linux系统的步骤。首先,通过“文件”菜单选择“新建虚拟机”并进入自定义设置。接着,在硬盘兼容性选项中选择默认设置。为了更好地进行Linux操作系统的安装练习,建议选择稍后安装操作系统,并在虚拟机安装完成后,根据实际需求删除不必要的硬件组件。此外,本文还提供了详细的配置参数和注意事项,帮助用户顺利完成整个部署过程。 ... [详细]
  • 微软近日宣布,将在Windows 10的WSL(Windows Subsystem for Linux)中引入重大更新,支持运行带有图形用户界面(GUI)的Linux应用程序。这一举措不仅提升了Windows 10在开发环境中的灵活性和兼容性,也进一步挑战了Linux在桌面领域的地位。通过此次更新,用户可以在Windows 10上无缝运行Linux GUI应用,无需额外安装虚拟机或双系统,极大地简化了开发和测试流程。这标志着微软在提升跨平台开发体验方面迈出了重要一步。 ... [详细]
  • Linux入门教程第七课:基础命令与操作详解
    在本课程中,我们将深入探讨 Linux 系统中的基础命令与操作,重点讲解网络配置的相关知识。首先,我们会介绍 IP 地址的概念及其在网络协议中的作用,特别是 IPv4(Internet Protocol Version 4)的具体应用和配置方法。通过实际操作和示例,帮助初学者更好地理解和掌握这些基本技能。 ... [详细]
author-avatar
鱼鱼
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有