命令行效率

回忆上节课内容

总结

  • 我们上次研究的是范围命令执行方法
  • 批量控制缩进

    • :20,40>
  • 批量执行普通模式下的命令

    • :4,10normal A;
  • 直接切换到全屏命令模式 ex-mode

    • Q
  • 执行外部命令

    • !javac oeasy.java
  • 这个方式真的很爽!

    • vi 什么都干了!
  • 命令模式本身可以再提高效率吗?

列出历史

使用历史命令

  • 在输出命令时

    • 方向键️️️️️可以控制左右移动
    • shift+️️️️️按照word左右移动光标
    • ctrl+b 到开头begin
    • ctrl+e 到结尾end
    • ctrl+w 向前删除一个word

      • 这个要特别注意,有的浏览器关闭标签页
      • 我用火狐一点问题没有
    • ctrl+u 删除到开头
  • 方向键↑️↓️️️可以翻阅历史命令

    • 也可以先输入:h s再按下↑️
    • 可以根据已经有的内容找出

      • :h scrolloff
      • :h shiftwidth
  • 想要列出所有命令历史怎么办?

命令历史

  • 我们可以列出所有执行过的命令:history

  • :h his[tory]可以找到 commandline.txt
  • 可以按照类型查看历史

    • :his c:his : 命令类历史
    • :his s:his /:his ? 搜索类历史
    • :his e:his = 表达式寄存器类
    • :his i:his @ 输入行类
    • :his d:his > debug类
  • 可以加范围

    • :his 2,5 2-5行命令历史
    • :his / 3,9 查询类命令历史的3-9
    • his -5,-1 最新的5
  • 总共可以保存多少条命令呢?

命令数量

  • :set history&

    • 还原为默认历史命令
  • :set history?

    • 查看这数量是多少?
    • 50
  • 设置更多命令历史记录

    • :set history=1000

直接修改命令

  • 命令行模式下 ctrl+f
  • 或者正常模式下

    • q: 查询所有命令
    • q: 查询所有搜索命令

新窗口

  • 这个窗口有历史的命令

    • 可以移动
    • 可以修改
  • 回车后执行光标所在行的命令
  • 执行后

    • 历史的命令不被修改
    • 新增一条最新的命令历史记录
  • 我能在命令行里复制粘贴么?

使用寄存器

  • 我能在命令行里复制粘贴么?
  • 可以查询手册:h c_ctrl-r

    • 查询命令模式下的ctrl+r
    • 这和插入模式下使用寄存器一致
    • 都是ctrl+r
    • 然后再指定寄存器
  • 这样我们就可以在命令行里面使用寄存器了

  • 我们先看看寄存器里面有什么?

    • :reg

具体操作

  • :进入命令行模式

    • 然后ctrl+r
    • 然后如果我们这个时候摁下"
    • 就把默认寄存器里面的内容放入了命令行中
  • 如果我们再:

    • 然后ctrl+r
    • 摁下%就把文件名放入了命令行中
    • 比如:!javac 的时候可以用这种方法把当前文件名输入到命令行中
  • 不过还是直接最简单:!javac %

总结

  • 命令行的运行光标控制

    • 方向键️️️️️可以控制左右移动
    • shift+️️️️️按照word左右移动光标
    • ctrl+b 到开头begin
    • ctrl+e 到结尾end
    • ctrl+w 向前删除一个word

      • 小心关闭窗口!
    • ctrl+u 删除到开头
  • 历史命令的遍历

    • 方向键↑️↓️️️
  • 命令行的历史记录

    • :history
    • :his -5
    • :his s
  • 进入命令历史记录编辑

    • 命令行状态下 ctrl+f
    • 或者正常模式下 q:
    • 选择、编辑、回车
  • 使用寄存器

    • 命令行状态下 ctrl+r
    • 然后输入寄存器的名称就可以了
  • 命令模式可以读写文件吗?
  • 下次再说

[Github地址] (GitHub - overmind1980/oeasyvim: 这是oeasy制作的的一套关于vim的教程 可以在 https://www.lanqiao.cn/teacher/courses/2840 做实验 邀请码FJWYIMGB 本教程从0基础开始,到精通vim配置,和高级命令。希望能让vim是你的开发更高效。)

[Gitee地址] (overmind1980/oeasyvim)

[蓝桥实验楼 邀请码FJWYIMGB] (oeasy 教您零基础玩转编辑神器 Vim_Linux - 蓝桥云课)

oeasy教您玩转vim - 50 - # 命令行效率的更多相关文章

  1. oeasy教您玩转vim - 56 - # 字符可视化模式

    ​ 可视化编辑 回忆上节课内容 我们学习了关于模式匹配中使用参数 单个参数 :%s/<h2>\(.*\)</h2>/ - \1/g 多个参数 :%s/<img src=\ ...

  2. oeasy教您玩转vim - 57 - # 行可视化

    ​ 可视化编辑 回忆上节课内容 上次我们了解到可视模式 其实可视化对应三种子模式 字符可视模式 v 行可视模式 大写V 块可视模式ctrl+v 我们先来了解字符可视化模式 快捷键 v 可配合各种mot ...

  3. oeasy教您玩转vim - 53 - # 批量替换

    查找细节 回忆上节课内容 我们温习了关于搜索的相关内容 /正向,?反向 n保持方向,N改变方向 可以设置 是否忽略大写小写 是否从头开始查找 是否高亮显示 还有一些正则表达式的使用方法 行头行尾 ^$ ...

  4. oeasy 教您玩转linux010101查看内核uname

    linux([?l?n?ks]) 是什么????? 咱们这次讲点什么呢?这次咱们讲讲这个 linux([?l?n?ks]),什么是 linux([?l?n?ks])呢?这linux([?l?n?ks] ...

  5. oeasy教您玩转linux-010110内容回顾

    我们来回顾一下 我们都讲了什么?

  6. oeasy教您玩转linux010107那啥在哪 whereis

    回忆上次内容 上次讲了 ls 的参数 (arguement) 和选项 (option) 的设置. 现在我们要制作这样一个列表:

  7. 手把手教你打造高效的 Kubernetes 命令行终端

    Kubernetes 作为云原生时代的操作系统,熟悉和使用它是每名用户的必备技能.本文将介绍一些提高操作 Kubernetes 效率的技巧以及如何打造一个高效的 Kubernetes 命令行终端的方法 ...

  8. 教程一 openwrt路由器入门 远程命令行+文件系统

    如图,拿到一个openwrt路由器我们第一步要远程控制. 这里在买了两块wifi-robots  wifi视频模块. 0首先说下这个WIIF的信息 淘宝购买链接 https://item.taobao ...

  9. 常用vim编辑器命令行

    按ESC键 跳到命令模式,然后: :w 保存文件但不退出vi:w file 将修改另外保存到file中,不退出vi:w! 强制保存,不推出vi:wq 保存文件并退出vi:wq! 强制保存文件,并退出v ...

  10. [转]让你提升命令行效率的 Bash 快捷键

    生活在 Bash shell 中,熟记以下快捷键,将极大的提高你的命令行操作效率. 编辑命令 Ctrl + a :移到命令行首 Ctrl + e :移到命令行尾 Ctrl + f :按字符前移(右向) ...

随机推荐

  1. springboot使controller异步调用

    调用controller方法,遇到操作时间很长的情况下,不希望前端一直等待操作,而希望前端立马接收到操作启动的反馈,而真正的操作在后端执行,需要用到异步调用的方法.实现步骤如下: 一.配置异步支持: ...

  2. VSCode 圈复杂度插件 CodeMetrics

    前言 圈复杂度(Cyclomatic Complexity)是一种代码复杂度的衡量标准.它可以用来衡量一个模块判定结构的复杂程度,数量上表现为独立现行路径条数,也可理解为覆盖所有的可能情况最少使用的测 ...

  3. pod(六):初始化容器Init Containers

    目录 一.系统环境 二.前言 三.初始化容器Init Containers 3.1 何为初始化容器Init Containers 3.2 Init Containers与普通容器的不同之处 3.3 I ...

  4. SSL/TSL 总结

    参考:https://blog.csdn.net/qq153471503/article/details/109524764 (一)生成CA证书 1.创建CA证书私钥openssl genrsa -a ...

  5. 浅析MySQL 8.0直方图原理

    本文分享自华为云社区<[MySQL技术专栏]MySQL8.0直方图介绍>,作者:GaussDB 数据库. 背景 数据库查询优化器负责将SQL查询转换为尽可能高效的执行计划,但因为数据环境不 ...

  6. Android 13 - Media框架(33)- ACodec(九)

    关注公众号免费阅读全文,进入音视频开发技术分享群! 前一节我们学习了Output Format Changed事件是如何上抛并且被处理的,这一节我们紧接着来学习OutputBuffer是如何上抛并且被 ...

  7. 行列式求值,从 $n!$ 优化到 $n^3$

    前置知识 \(\sum\) 为累加符号,\(\prod\) 为累乘符号. 上三角矩阵指只有对角线及其右上方有数值其余都是 \(0\) 的矩阵. 如果一个矩阵的对角线全部为 \(1\) 那么这个矩阵为单 ...

  8. itestwork(爱测试) 一站式接口测试&敏捷测试工作站 9.0.1 发布,ui 及Bug fix

    (一)itest 简介 itest work (爱测试)  一站式工作站让测试变得简单.敏捷.itest work 包含极简的任务管理,测试管理,缺陷管理,测试环境管理,接口测试,接口Mock 6合1 ...

  9. testArticle

    Test Article This is a test article for ArticleSync. Test Edit...... test Edit

  10. 从零开始写 Docker(十七)---容器网络实现(中):为容器插上”网线“

    本文为从零开始写 Docker 系列第十七篇,利用 linux 下的 Veth.Bridge.iptables 等等相关技术,构建容器网络模型,为容器插上"网线". 完整代码见:h ...