Linux文本工具之-Vim(一)

一、模式

1、普通模式

这是使用Vim打开一个文件时,Vim的默认模式。在普通模式下,您可以使用各种命令来移动光标、删除、复制、粘贴和其他编辑操作

2、插入模式

在插入模式下,您可以像在其他文本编辑器中一样输入和编辑文本。按下键盘上的插入键(通常是 i 、ao或 Insert 键)即可进入插入模式

3、可视模式

可视模式允许您选择、高亮并操作文本块。您可以使用各种移动命令来选择文本。在普通模式下敲击键盘的 v 键即可进入可视模式,然后移动光标就可以选中一块文本,常用来完成文本的复制、粘贴、删除等操作。
替换模式(Replace mode): 在替换模式下,您可以直接替换光标所在位置的字符。在普通模式下敲击键盘上的 R 键即可进入替换模式

4、替换模式

 在替换模式下,您可以直接替换光标所在位置的字符。在普通模式下敲击键盘上的 R 键即可进入替换模式

5、命令行模式

 命令行模式允许您执行各种命令。您可以在命令行中输入命令,例如保存文件、退出Vim、显示行号等。在普通模式下敲击 : 键即可进入命令行模式。

6、Ex mode模式

Ex 模式是Vim的可选模式,它是命令行模式的扩展。Ex 模式提供了更多高级命令和编辑选项。可以一次执行多个命另

二、光标移动

1、单字符移动
  • h:向左移动一个字符
  • l:向右移动一个字符
  • j:向下移动一行
  • k:向上移动一行
  • xh:向左移动x个字符距离
2、词组的移动
  • w:向后移动一个单词,移动到下一个单词的开头
  • b:向前移动一个单词,移动到前一个单词的开头
  • e:将光标移动到下一个单词的词末,如果光标不在当前单词的词尾时会移动到当前单词的词尾
  • E:移动到单词的结尾(忽略标点符号)
  • ge:将光标移动到上一个单词的词末
  • xw:指定移动的x次数
3、行移动
  • 0:将光标移动到当前行的行首。
  • $:将光标移动到当前行的行尾。
  • ^:将光标移动到当前行的第一个非空字符处(行首和当前行非空字符不是一个位置)。
  • 2|:将光标移动到当前行的第二个字符处。| 表示列。
  • fx:在当前行中向前查找字符 x,将光标定位到下一个出现的字符位置。
  • 3fx:在当前行中向前查找字符 x,将光标定位到第三个出现的字符位置。
  • tx:在当前行中向前查找字符 x,将光标定位到下一个出现的字符前一个位置(即停在字符 x 前一个位置)。
  • %:在匹配的括号间进行跳转,比如在括号或引号的一对匹配中,移动到相匹配的括号或引号处。
4、文本块移动
  • (:将光标移动到当前 \ 上一个句子的开头。句子以句号、问号或感叹号结尾。
  • ):将光标移动到下一个句子的开头
  • {:将光标移动到当前 \ 上一个段落的开头。段落由空行或一系列连续的非空行组成。
  • }:将光标移动到下一个段落的开头。
  • [[:将光标移动到当前 \ 上一个函数或块的开头。
  • ]]:将光标移动到下一个函数或块的开头
5、屏幕中移动
  • gg:移动到文件的第一行
  • G:移动到文件的最后一行
  • xG:将光标移动到文件的第 x 行,其中 x 是行号
  • H:移动到当前屏幕的顶部行
  • M:移动到当前屏幕的中间行
  • L:移动到当前屏幕的底部行
  • Ctrl+f:向前翻页
  • Ctrl+b:向后翻页

三、滚屏和跳转

1、Ctrl+u

向屏幕上方滚动半个屏幕的高度

2、Ctrl+d

向屏幕下方滚动半个屏幕的高度

3、Ctrl+b

向屏幕上方滚动一个屏幕的高度

4、Ctrl+f

向屏幕下方滚动一个屏幕的高度

5、zt

将当前行移动到屏幕顶部

6、zz

将当前行移动到屏幕中间

7、zb

将当前行移动到屏幕底部

8、:N

将光标移动到第 N 行

四、选中

v进行字符选中
V 或shift+v进行行选中
gv选中上一次选择的内容
o光标移动到选中内容另一处结尾
O光标移动到选中内容另一处角落
ctr + V进行块选中

指定内容的选中,根据光标来选中内容:

先将光标移动到指定内容的起始位置,按v进入可视模式,通过l向后选择,通过j向下选择,通过h向前选择,直到光标到达选中内容的尾部。

如下图:

ctrl+v 效果如图:

一般而言选中命令常用在文本内容或者特殊文本区块内容的拷贝和剪切 ,使用方法很简单,当在可视模式下选中了内容后,按y键复制,此时vim内容最下方可以看到提示信息如图:

关于复制的讲解移步下面内容 

五、复制、剪切、粘贴、删除、撤销

 1、复制
快捷键功能描述
y复制已选中的文本到剪贴板
n+yy复制光标所在行,此命令前可以加数字 n,可复制多行
yw复制光标位置的单词
ctrl+v + 方向键+yyctrl+v,并按方向键选中区块,按下yy复制
 2、剪切
快捷键功能描述
dd剪切光标所在行
数字+dd以光标所在行为准(包含当前行),向下剪切指定行数
D剪切光标所在行

 

3、粘贴
快捷键功能描述
p将剪贴板中的内容粘贴到光标后
P(大写)将剪贴板中的内容粘贴到光标前
4、删除
快捷键功能描述
x删除光标所在位置的字符
X(大写)删除光标前一个字符
dd删除光标所在行,删除之后,下一行上移
D删除光标位置到行尾的内容,删除之后,下一行不上移
ndd删除当前行(包括此行)后 n 行文本
dw移动光标到单词的开头以删除该单词
dG删除光标所在行一直到文件末尾的所有内容
:a1,a2d删除从 a1 行到 a2 行的文本内容
5、撤销
快捷键功能描述
u撤销
ctrl+r恢复
U(大写)撤销所有编辑

实践如下图:

yy是复制光标当前行,p是粘贴复制的行到光标下方行,当光标选中的非行数据时不包含\n,所以p粘贴时在光标后。

如图:

复制上图选中的内容在当前光标位置粘贴

下图为按键yllllllp

下图效果为按键yp 

实操截图只是为了讲解,vim的命令还需要自己动手去不断熟悉才能深刻。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://xiahunao.cn/news/3246520.html

如若内容造成侵权/违法违规/事实不符,请联系瞎胡闹网进行投诉反馈,一经查实,立即删除!

相关文章

2024年【北京市安全员-C3证】证考试及北京市安全员-C3证作业模拟考试

题库来源:安全生产模拟考试一点通公众号小程序 北京市安全员-C3证证考试根据新北京市安全员-C3证考试大纲要求,安全生产模拟考试一点通将北京市安全员-C3证模拟考试试题进行汇编,组成一套北京市安全员-C3证全真模拟考试试题,学员…

06. Hibernate 中主键映射的助攻

1. 前言 本节课和大家一起聊聊 Hibernate 中的主键策略。通过本节课程,你将了解到: 什么是主键策略及主键生成器的种类;如何映射复合主键。 2. 主键策略 Hibernate 进行数据库操作时,可依靠主键生成器组件更快速、准确地进行一…

CentOS 7.9 64位安装nginx,部署tomcat实现负载均衡

在CentOS 7.9 中安装nginx做负载均衡步骤 用ubuntu试了一下没成功 centos更顺利,当初听到什么nginx,负载均衡,反向代理,redis这些就潜意识就觉得好复杂,今天花一下午时间尝试了一下,感觉也没那么难&#xf…

uniapp判断h5/微信小程序/app端+实战展示

文章目录 导文使用条件编译的基本语法常见的平台标识符示例实战展示使用场景举例注意事项 导文 这里是导文 当你在开发Uni-app时,需要根据不同的平台(比如App端、H5端、微信小程序等)来执行不同的代码逻辑,可以使用条件编译来实现…

深度解析:电商订单API及其技术实现

随着电子商务的发展,实体企业开拓电商渠道的越来越多,原有的管理系统都需要增加电商业务管理功能,其中,对电商订单的管理是每一个电商商家都需要的功能,所以对于开发者来说,了解电商API是什么是非常重要的&…

FastBee物联网开源项目本地启动调试

一、本地环境准备 (1)Visual Studio Code(启动前端项目) (2)IntelliJ IDEA Community Edition (启动后端项目) (3)Navicat或者DBeaver(用来操…

去除重复字母

题目链接 去除重复字母 题目描述 注意点 s 由小写英文字母组成1 < s.length < 10^4需保证 返回结果的字典序最小&#xff08;要求不能打乱其他字符的相对位置&#xff09; 解答思路 本题与移掉 K 位数字类似&#xff0c;需要注意的是&#xff0c;并不是每个字母都能…

LinuxShell编程1———shell基础命令

文章目录 前言 一、shell基础知识 1、shell概念 2、Shell的功能 接收&#xff1a;用户命令 调用&#xff1a;相应的应用程序 解释并交给&#xff1a;内核去处理 返还&#xff1a;内核处理结果 3、Shell种类&#xff08;了解&#xff09; 3.1、MS-DOS 3.2、Windows的…

Microsoft Edge(简称Edge)

Microsoft Edge&#xff08;简称Edge&#xff09;是一款由微软开发的网页浏览器&#xff0c;它为用户提供了许多便捷的功能和选项。以下是Edge浏览器的使用方法&#xff1a; 一、基本使用方法 打开Edge浏览器&#xff1a; 可以在Windows的开始菜单中找到“Microsoft Edge”并点…

探索编程世界的乐趣:《C++青少年趣味编程108例》

&#x1f482; 个人网站:【 摸鱼游戏】【网址导航】【神级代码资源网站】&#x1f91f; 一站式轻松构建小程序、Web网站、移动应用&#xff1a;&#x1f449;注册地址&#x1f91f; 基于Web端打造的&#xff1a;&#x1f449;轻量化工具创作平台&#x1f485; 想寻找共同学习交…

Python学习:实现Python项目并学习如何进行(附70个项目源码)

实现Python项目并学习如何进行&#xff0c;是一个循序渐进的过程&#xff0c;涵盖了多个方面&#xff0c;包括基础知识的学习、技能的提升、项目的规划和实施等。以下是一个基本的指南&#xff0c;帮助你开始学习并实现Python项目&#xff1a; 1. 学习Python基础知识 语法与基…

【北京迅为】《i.MX8MM嵌入式Linux开发指南》-第二篇 Linux系统编程篇-第三十三章 库的制作与使用

i.MX8MM处理器采用了先进的14LPCFinFET工艺&#xff0c;提供更快的速度和更高的电源效率;四核Cortex-A53&#xff0c;单核Cortex-M4&#xff0c;多达五个内核 &#xff0c;主频高达1.8GHz&#xff0c;2G DDR4内存、8G EMMC存储。千兆工业级以太网、MIPI-DSI、USB HOST、WIFI/BT…

NDK R25b 交叉编译FFMpeg4,项目集成,附库下载地址

1.准备工作 文件下载&#xff1a; NDK R25b下载地址&#xff1a;Android NDK历史版本下载网址 - 君*邪 - 博客园 (cnblogs.com) FFmpeg4.4.4 下载地址&#xff1a;https://ffmpeg.org/releases/ffmpeg-4.4.4.tar.xz 环境配置&#xff1a; 本次编译环境是在PC虚拟机中使用U…

BigMarker-抽奖前置规则过滤

需求 在我们的流程设计中&#xff0c;用户执行抽奖时会判断是否已经超过N积分&#xff0c;如果超过N积分则可以在限定范围内进行抽奖。同时如果用户是黑名单范围的羊毛党用户&#xff0c;则只返回固定的奖品ID 模型 整个规则来说&#xff0c;分为抽奖前、抽奖中、抽奖后&#…

无人机之机型区别与应用领域

一、多旋翼无人机 特点&#xff1a;多旋翼无人机依靠产生升力以平衡飞行器的重力&#xff0c;通过改变每个旋翼的转速来控制飞行姿态&#xff0c;能够悬停和垂直起降。他们具备体积小、重量轻、噪音小、隐蔽性好的特点&#xff0c;操作灵活且易于维护。 应用&#xff1a;多旋…

数据库(创建数据库和表)

目录 一&#xff1a;创建数据库 二&#xff1a;创建表 2.1&#xff1a;创建employees表 2.2&#xff1a;创建orders表 2.3&#xff1a;创建invoices表 一&#xff1a;创建数据库 mysql> create database mydb6_product; Query OK, 1 row affected (0.01 sec) mysql&g…

排序——归并排序及排序章节总结

前面的文章中 我们详细介绍了排序的概念&#xff0c;插入排序&#xff0c;交换排序与选择排序&#xff0c;大家可以通过下面的链接再去学习&#xff1a; ​​​​​​排序的概念及插入排序 交换排序 选择排序 这篇文章就详细介绍一下另一种排序算法&#xff1a;归并排序以及…

鼠标宏编辑有什么作用?通用鼠标宏软件下载

你知道鼠标宏编辑吗&#xff1f;鼠标宏编辑是电脑鼠标连点器内一种常用功能。用户通过鼠标宏编辑可以很好提高效率。本文将深入探讨鼠标宏编辑的定义、作用及其在不同领域的应用&#xff0c;带您了解它的重要性和实际价值。并整理了2024年最新款的6大好用鼠标宏软件&#xff0c…

FPGA实训报告DAY 1(Verilog HDL)

实习日志与总结 日期&#xff1a;2024 年 7 月 10 日 星期三 姓名&#xff1a;XXX 一、实习日志 上午 9:00 - 9:30 按时到达工位&#xff0c;参加部门早会&#xff0c;了解了今天的实习任务和目标&#xff0c;即初步学习 FPGA 简介和 Verilog 基础语法知识。 9:30 - 10:30…

大数据基础:Doris重点架构原理

文章目录 Doris重点架构原理 一、Apache Doris介绍 二、Apache Doris使用场景 三、Apache Doris架构原理 四、Apache Doris 特点 Doris重点架构原理 一、Apache Doris介绍 基于 MPP 架构的高性能、实时的分析型数据库&#xff0c;以极速易用的特点被人们所熟知&#xff…