码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • Linux-Vi和 Vim编辑器


    Linux-Vi和 Vim编辑器

    1.vi和vim的基本介绍

    ​ Linux 系统会内置 vi 文本编辑器

    ​ Vim 具有程序编辑的能力,可以看做是 Vi 的增强版本,可以主动的以字体颜色辨别语法的正确性,方便程序设计。代码补完、编译及错误跳转等方便编程的功能特别丰富,在程序员中被广泛使用。

    image-20220827083613112

    2.vi和vim常用的三种模式

    1.正常模式

    ​ 以 vim 打开一个档案就直接进入一般模式了(这是默认的模式)。在这个模式中, 你可以使用『上下左右』按键来移动光标,你可以使用『删除字符』或『删除整行』来处理档案内容, 也可以使用『复制、粘贴』来处理你的文件数据。

    2.插入模式

    按下 i, I, o, O, a, A, r, R 等任何一个字母之后才会进入编辑模式, 一般来说按 i 即可.

    3.命令行模式

    输入 esc 再输入:在这个模式当中, 可以提供你相关指令,完成读取、存盘、替换、离开 vim 、显示行号等的动作则是在此模式中达成的!

    3.vi和vim基本使用

    使用 vim 开发一个 Hello.java 程序, 保存.步骤说明和演示

    #进入Hello.java,默认正常模式
    vim Hello.java
    
    #输入i进入编辑模式,输入如下内容
    public static void main(String args){
            System.out.println("hello,world~");
    }
    
    #输入 esc 再输入:进入命令行模式 ,:wq保持并退出 :q不保存退出
    :wq
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10

    image-20220827084221902

    4.各种模式的相互切换

    image-20220827084239949

    5.vi和vim快捷键

    1.快捷键使用练习

    1. (正常模式下)拷贝当前行 yy , 拷贝当前行向下的 5 行 5yy,并粘贴(输入 p)。

    image-20220827084555319

    1. (正常模式下)删除当前行 dd , 删除当前行向下的 5 行 5dd

    image-20220827084610446

    1. (正常模式下)在文件中查找某个单词 [命令行下 /关键字 , 回车 查找 , 输入 n 就是查找下一个 ]

    image-20220827084630924

    1. (命令行模式)设置文件的行号,取消文件的行号.[命令行下 : set nu 和 :set nonu]

    image-20220827084700489

    image-20220827084716837

    1. 编辑 /etc/profile 文件,在一般模式下, 使用快捷键到该文档的最末行[G]和最首行[gg]

    2. 在一个文件中输入 “hello” ,在一般模式下, 然后又撤销这个动作 u

    3. 编辑 /etc/profile 文件,在一般模式下, 并将光标移动到 , 输入 20,再输入 shift+g

    4. 快捷键的键盘对应图

    image-20220827085056683

    ​ 9.更多快捷键,参考linux菜鸟教程

  • 相关阅读:
    SpringBoot框架学习(三)——热部署,整合Redis
    零基础Linux_21(多线程)页表详解+轻量级进程+pthread_create
    2022BATJ1000 道 Java 面试题解析,已有 372 人上岸(必看攻略)
    【大数据】Apache Hive数仓(学习笔记)
    数据库慢SQL排查及优化问题
    淘宝/天猫关键词搜索采集接口分析商品价格走势(商品列表,商品销量,商品价格,分类ID采集精准商品数据)接口代码对接流程
    java计算机毕业设计基于ssm+Vue的戒烟网站(源代码+数据库+Lw文档)
    tiktok接口对接
    JavaScript中Promise、事件循环、宏任务微任务综合面试题详解
    EFCore高级Saas系统下单DbContext如何支持不同数据库的迁移
  • 原文地址:https://blog.csdn.net/qq_44981526/article/details/126554008
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号