Linux笔记之diff和vimdiff

Linux笔记之diff和vimdiff

code review!

文章目录

  • Linux笔记之diff和vimdiff
    • 一.diff
      • 1.1.使用diff比较文件夹
      • 1.2.使用diff比较文件
      • 1.4.colordiff——带颜色输出差异
    • 二.vimdiff
      • 2.1.vimdiff颜色差异
      • 2.2.vimfiff调整栏宽
      • 2.3.修改颜色变谈,使代码可以看清楚
      • 2.4.vimdiff一次性退出所有分屏窗口

一.diff

参考博文:阮一峰的网络日志——读懂diff

比较文件夹不同于比较文件

1.1.使用diff比较文件夹

最常用参数:-rq
-r 选项表示递归比较目录及其子目录中的文件。
-q 选项表示只显示差异,而不显示具体的差异内容。

使用示例:
在这里插入图片描述

1.2.使用diff比较文件

  • 1.实验-正常格式:diff a.cc b.cc

  • 2.实验-上下文格式:diff -c a.cc b.cc

  • 3.实验-合并格式:diff -u a.cc b.cc

  • 4.实验-git格式:git diff a.cc b.cc

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

1.4.colordiff——带颜色输出差异

在这里插入图片描述

二.vimdiff

2.1.vimdiff颜色差异

在这里插入图片描述

vimdiff 中的颜色差异是通过不同的语法高亮和背景颜色来表示的,具体的颜色可能取决于Vim 配置。然而,通常情况下,vimdiff 使用以下颜色表示不同的差异:

  1. 新增行:通常以绿色表示,新添加的行会有绿色的背景。这表示这些行只存在于一个文件中,而不在另一个文件中。

  2. 删除行:通常以红色表示,被删除的行会有红色的背景。这表示这些行存在于一个文件中,但在另一个文件中被删除了。

  3. 改动行:通常以黄色表示,被更改的行会有黄色的背景。这表示这些行在两个文件中都存在,但在它们之间存在差异。

  4. 相同行:相同的行通常以灰色表示,没有特殊的背景颜色。这表示这些行在两个文件中完全相同,没有差异。

请注意,具体的颜色和外观可能因 Vim 配置和颜色方案而有所不同。可以查看Vim 配置文件,如 .vimrc,以了解当前的颜色配置。如果希望更改颜色,可以编辑 Vim 的颜色配置或选择不同的颜色方案来满足偏好。

2.2.vimfiff调整栏宽

vimdiff 中调整栏(panel)宽度是可能的,这可以让您更好地适应屏幕上的差异。您可以使用以下键盘快捷键来调整栏宽:

  1. 手动调整栏宽度:

    • vimdiff 中,您可以手动调整栏宽度。将光标移动到两个栏之间的分隔线上,然后使用鼠标左键点击并拖动以调整栏宽。
  2. 使用快捷键:

    • 您还可以使用以下快捷键来调整栏的宽度:
      • Ctrl + W(按住 Ctrl 键,然后按 W 键)后跟 >:将焦点移动到右侧的面板,然后使用 > 来增加右侧面板的宽度。
      • Ctrl + W 后跟 <:将焦点移动到左侧的面板,然后使用 < 来增加左侧面板的宽度。
      • 这些快捷键使您可以在两个面板之间分配屏幕空间。

请注意,vimdiff 默认使用平均的栏宽分配,但您可以使用上述方法手动调整它们以适应您的需求。这对于在不同的差异部分之间进行更详细的比较非常有用。

2.3.修改颜色变谈,使代码可以看清楚

在 ~/.vimrc 中加入

if &diffcolorscheme evening
endif

在这里插入图片描述

2.4.vimdiff一次性退出所有分屏窗口

要一次退出 vimdiff 中的所有分屏窗口,您可以使用以下步骤:

  1. vimdiff 中,确保您已在主窗口(可能是左侧的窗口)。

  2. 使用以下命令退出所有分屏窗口并关闭 vimdiff

    :qa
    

    这将执行以下操作:

    • :q 表示退出 Vim 中的当前窗口。
    • a 表示 “all”,意味着关闭所有打开的窗口。

    这将关闭 vimdiff 中的所有分屏窗口并退出 Vim。

请注意,如果您在 vimdiff 中进行了更改但没有保存,Vim 可能会提示您保存更改或放弃更改,具体取决于您的操作。确保在退出之前保存任何重要的更改。

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

FreeRTOS深入教程(任务的引入及栈的作用)

文章目录 前言一、任务的引入二、深入理解C语言函数的调用1.ARM架构2.基础汇编指令3.函数运行流程分析 三.保存现场的几种情况1.函数调用2.中断处理3.任务切换 总结 前言 本篇文章开始带大家深入学习FreeRTOS&#xff0c;带大家学习什么是任务&#xff0c;并且深入学习栈的作用…

AWS SAA-C03考试知识点整理

S3&#xff1a; 不用于数据库功能 分类&#xff1a; S3 Standard &#xff1a;以便频繁访问 S3 Standard-IA 或 S3 One Zone-IA &#xff1a; 不经常访问的数据 Glacier&#xff1a; 最低的成本归档数据 S3 Intelligent-Tiering智能分层 &#xff1a;存储具有不断变化或未知访问…

使用按钮从 SAP 系统内打开 Excel 文件

了解如何通过 SAP 屏幕上创建的按钮打开所需的 Excel 文件。为了演示这一点&#xff0c;将指导您完成以下步骤。 使用 del 命令删除 SAP 上不必要的元素添加一个按钮&#xff0c;单击后打开弹出窗口创建一个函数来选择 excel 文件创建打开所需 excel 文件的函数 定制 登录 S…

231022|redis_demo

安装 https://github.com/tporadowski/redis https://github.com/redis/redis-py/ 解压后要先配置redis.windows.conf文件&#xff0c;里面有本地端口和密码设置 默认host:127.0.0.1 port:6379 打开命令行到redis文件夹下&#xff0c;redis-server.exe redis.windows.conf输入即…

C语言程序环境和预处理

大家好&#xff0c;我们今天来分享C语言程序环境和预处理方面的内容。 C语言程序的运行阶段 C语言程序的运行是把我们的test.c文件&#xff08;也就是我们通常所说的文本信息里面的代码&#xff09;通过翻译环境转化为test.exe文件&#xff08;这个就是可执行程序&#xff0c;但…

【ONE·C++ || 智能指针 特殊类的设计】

总言 主要介绍智能指针&#xff08;auto_ptr、unique_ptr、shared_ptr、weak_ptr&#xff09;和特殊类的设计&#xff08;单例模式&#xff09;。 文章目录 总言1、为什么需要智能指针&#xff1f;&#xff08;内存泄漏&#xff09;1.1、什么是内存泄漏1.2、内存泄漏的分类和常…

设计模式-单例模式 (Singleton)

单例模式 &#xff08;Singleton&#xff09; 单例模式是一种创建型设计模式&#xff0c;它确保类只有一个实例&#xff0c;并提供了一种访问该实例的全局方法。这种模式有助于确保系统中的某些组件只有一个实例&#xff0c;并提供了一种方便的方法来访问该实例。 1、单例类只…

【AOA-VMD-LSTM分类故障诊断】基于阿基米德算法AOA优化变分模态分解VMD的长短期记忆网络LSTM分类算法(Matlab代码)

&#x1f4a5;&#x1f4a5;&#x1f49e;&#x1f49e;欢迎来到本博客❤️❤️&#x1f4a5;&#x1f4a5; &#x1f3c6;博主优势&#xff1a;&#x1f31e;&#x1f31e;&#x1f31e;博客内容尽量做到思维缜密&#xff0c;逻辑清晰&#xff0c;为了方便读者。 ⛳️座右铭&a…

7.20 SpringBoot项目实战【图书详情-学生端】:图书信息 + 评论列表 + 是否收藏

文章目录 前言一、接口规划二、编写服务层三、编写数据访问层四、编写控制器五、PostMan测试1. getBook 根据id获取图书2. getBookCommentList 根据id获取图书详情 - 评论列表3. getFavoriteId 获取学生收藏了某图书的收藏id 最后 前言 学生的【借阅申请】审核通过以后&#x…

Node学习笔记之包管理工具

一、概念介绍 1.1 包是什么 『包』英文单词是package &#xff0c;代表了一组特定功能的源码集合 1.2 包管理工具 管理『包』的应用软件&#xff0c;可以对「包」进行 下载安装 &#xff0c; 更新 &#xff0c; 删除 &#xff0c; 上传 等操作 借助包管理工具&#xff0c;可…

C++前缀和算法:生成数组原理、源码及测试用例

本文涉及的基础知识点 C算法&#xff1a;前缀和、前缀乘积、前缀异或的原理、源码及测试用例 包括课程视频 动态规划&#xff0c;日后完成。 题目 给定三个整数 n、m 和 k 。考虑使用下图描述的算法找出正整数数组中最大的元素。 请你构建一个具有以下属性的数组 arr &#…

Go并发编程之一

一、前言 新年学新语言Go系列文章已经完结&#xff0c;用了最简单的例子去了解Go基础语法&#xff0c;但Go最牛B的是它对并发的友好支持&#xff0c;每一门语言都有它自己独特的优势&#xff0c;如Java适合大型工程化项目&#xff0c;Python适合做数据分析及运维脚本&#xff0…

AD9371 官方例程HDL详解之JESD204B TX_CLK生成 (一)

AD9371 系列快速入口 AD9371ZCU102 移植到 ZCU106 &#xff1a; AD9371 官方例程构建及单音信号收发 ad9371_tx_jesd -->util_ad9371_xcvr接口映射&#xff1a; AD9371 官方例程之 tx_jesd 与 xcvr接口映射 参考资料&#xff1a; UltraScale Architecture GTH Transceive…

Android---OkHttp详解

OkHttp 是一套处理 HTTP 网络请求的依赖库&#xff0c;由 Square 公司设计研发并开源&#xff0c;目前可以在 Java 和 Kotlin 中使用。对于 Android App&#xff0c;OkHttp 现在几乎已经占据了所有的网络请求操作。RetroFit OkHttp 实现网络请求似乎成了一种标配。 因此&…

html 按钮点击倒计时,限制不可点击

html 按钮点击倒计时&#xff0c;限制不可点击 e94cbabd25cfc7f3f53a50a235734c22.jpg <!DOCTYPE html> <html><head><meta http-equiv"Content-Type" content"text/html; charsetutf-8" /><title></title></head&…

Upload-labs(1-20关保姆级教程)

靶场下载链接 https://github.com/c0ny1/upload-labs 话不多说&#xff0c;直接喂饭 lab-1 上传php木马&#xff0c;发现弹出提示框&#xff0c;查看源码可知是前端过滤 bp抓包&#xff0c;先上传一张正常的jpg图片 修改文件内容和后缀&#xff0c;大概就是想怎么改就怎么…

leetCode 30.串联所有单词的子串

给定一个字符串 s 和一个字符串数组 words。 words 中所有字符串 长度相同。s 中的 串联子串 是指一个包含 words 中所有字符串以任意顺序排列连接起来的子串。 例如&#xff0c;如果 words ["ab","cd","ef"]&#xff0c; 那么 "abcdef&…

互联网Java工程师面试题·Java 面试篇·第五弹

目录 79、适配器模式和装饰器模式有什么区别&#xff1f; 80、适配器模式和代理模式之前有什么不同&#xff1f; 81、什么是模板方法模式&#xff1f; 82、什么时候使用访问者模式&#xff1f; 83、什么时候使用组合模式&#xff1f; 84、继承和组合之间有什么不同&#…

【Python】图像和办公文档的处理

图像和办公文档处理 用程序来处理图像和办公文档经常出现在实际开发中&#xff0c;Python的标准库中虽然没有直接支持这些操作的模块&#xff0c;但我们可以通过Python生态圈中的第三方模块来完成这些操作。 操作图像 计算机图像相关知识 颜色。如果你有使用颜料画画的经历&…

【JavaEE】网络编程(网络编程基础、Socket套接字)

一、网络编程基础 1.1、什么是网络编程&#xff1f; 网络编程&#xff0c;指网络上的主机&#xff0c;通过不同的进程&#xff0c;以编程的方式实现网络通信&#xff08;或称为网络数据传输&#xff09; 注意&#xff1a;我们只要满足进程不同就行&#xff1b;所以即便是同一…