当前位置: 首页 > news >正文

diff命令和vimdiff命令

文章目录

    • diff命令
      • 基本用法
      • 选项
      • 示例
    • vimdiff命令
      • 命令格式
      • 选项说明
      • 常用操作

diff命令

diff命令是一个文本比较工具,用于比较两个文件的内容,它会逐行比较两个文件的内容并输出它们之间的差异。下面是diff命令的常用选项和用法:

基本用法

比较两个文件的内容:

diff file1 file2

在输出的信息中:

  • <表示第一个文件中存在但第二个文件中不存在的行
  • >表示第二个文件中存在但第一个文件中不存在的行
  • c表示两个文件中存在差异的行
  • !表示两个文件中存在差异的行,但是无法比较

选项

  • -r--recursive:递归比较目录下的所有文件
  • -a--text:将二进制文件视为文本文件进行比较
  • -i--ignore-case:忽略大小写进行比较
  • -w--ignore-all-space:忽略所有空格字符进行比较
  • -B--ignore-blank-lines:忽略空白行进行比较
  • -u--unified:输出统一格式的差异信息
  • -q--brief:仅输出文件是否不同的信息,不输出差异内容
  • -s--report-identical-files:当文件相同时也输出信息
  • -y--side-by-side  以并列的方式显示文件的异同之处。(常用)
  • -W<宽度>或--width<宽度>  在使用-y参数时,指定栏宽。(常用)
  • -c  显示全部内文,并标出不同之处

示例

范例文件

[root@localhost ~]# cat csq.txt 
I like LINUX 
I don't speak English, which makes my studies very difficult
but it doesn't affect my love for LINUX
[root@localhost ~]# cat zhw.txt 
I like Linux 
I can speak English, which makes my studies very difficult
but it doesn't affect my love for Linux
  1. 比较两个文件的内容:
[root@localhost ~]# diff csq.txt zhw.txt 
1,3c1,3
< I like LINUX 
< I don't speak English, which makes my studies very difficult
< but it doesn't affect my love for LINUX
---
> I like Linux 
> I can speak English, which makes my studies very difficult
> but it doesn't affect my love for Linux
  1. 比较两个目录下的所有文件:
[root@localhost ~]# diff -r /home/ftptest/ /home/zhw/
只在 /home/zhw/ 存在:.bash_history
只在 /home/ftptest/ 存在:hosts
只在 /home/ftptest/ 存在:sysctl.conf
只在 /home/ftptest/ 存在:test.txt
  1. 忽略大小写进行比较:
[root@localhost ~]# diff -i zhw.txt csq.txt 
2c2
< I can speak English, which makes my studies very difficult
---
> I don't speak English, which makes my studies very difficult
  1. 输出统一格式的差异信息:
[root@localhost ~]# diff -u csq.txt zhw.txt 
--- csq.txt     2023-05-15 08:52:47.487039081 +0800
+++ zhw.txt     2023-05-15 08:53:33.503040150 +0800
@@ -1,3 +1,3 @@
-I like LINUX 
-I don't speak English, which makes my studies very difficult
-but it doesn't affect my love for LINUX
+I like Linux 
+I can speak English, which makes my studies very difficult
+but it doesn't affect my love for Linux
  1. 仅输出文件是否不同的信息,不输出差异内容:
[root@localhost ~]# diff -q csq.txt zhw.txt 
文件 csq.txt 和 zhw.txt 不同

vimdiff命令

vimdiffvim编辑器自带的文件差异比较工具,它可以让用户在一个终端窗口中同时打开两个文件,并将它们的差异以不同的颜色进行标示,从而方便用户进行比较和合并操作。下面是vimdiff命令的详细解释和使用方法:

命令格式

vimdiff [选项] 文件1 文件2

选项说明

  • -d:在左右排列的两个窗口中同时打开 csq.txt 和 zhw.txt 两个文件,如下图所示
    image-20230515103140926

  • -o:以一上一下的方式打开这csq.txt和zhw.txt 两个文件,如图所示:

    image-20230515103249778

常用操作

  • 上下左右箭头:在左右两个窗口中移动光标
  • Ctrl-w + w:在左右两个窗口之间切换焦点
  • Ctrl-w + r:将或上下两个窗口的位置交换
  • ]c:移动光标到下一个差异处
  • [c:移动光标到上一个差异处
  • do:将光标所在处的修改应用到另一个文件中
  • dp:将光标所在处的修改从另一个文件中复制到当前文件中
  • :diffupdate:更新差异信息
  • :wqa:保存并退出
  • :qa:强制退出
  • zo:打开折叠,显示差异处的内容
  • zc:关闭折叠,隐藏差异处的内容

相关文章:

diff命令和vimdiff命令

文章目录 diff命令基本用法选项示例 vimdiff命令命令格式选项说明常用操作 diff命令 diff命令是一个文本比较工具&#xff0c;用于比较两个文件的内容&#xff0c;它会逐行比较两个文件的内容并输出它们之间的差异。下面是diff命令的常用选项和用法&#xff1a; 基本用法 比…...

AcWing 797.差分(C++)

目录 1.题目描述 2.AC 1.题目描述 797.差分 输入一个长度为 nn 的整数序列。 接下来输入 mm 个操作&#xff0c;每个操作包含三个整数 l,r,cl,r,c&#xff0c;表示将序列中 [l,r][l,r] 之间的每个数加上 cc。 请你输出进行完所有操作后的序列。 输入格式 第一行包含两…...

Python每日一练(20230515) 只出现一次的数字 I\II\III

目录 1. 只出现一次的数字 Single Number 2. 只出现一次的数字 II Single Number II 3. 只出现一次的数字 III Single Number III &#x1f31f; 每日一练刷题专栏 &#x1f31f; Golang每日一练 专栏 Python每日一练 专栏 C/C每日一练 专栏 Java每日一练 专栏 leetcod…...

基于【EasyDL】【图像分类】实现农作物病害识别小程序

内容、数据集来源:基于飞桨的农作物病害智能识别系统 - 飞桨AI Studio 项目背景 联合国粮食及农业组织的一份报告表明&#xff0c;每年农业生产的自然损失中有三分之一以上是由农业病虫害造成的&#xff0c;使这些成为当前影响农业生产和农业生产的最重要因素。需要考虑的农业…...

元宇宙又“死”了!Epic老板:你当6亿用户是摆设?

“扎克伯格花了数年时间试图让Metaverse成为现实&#xff0c;但现在它已被AI取代&#xff0c;并走向科技创意的坟墓。”一篇表达“元宇宙已死”的文章近期在推特上引发热议&#xff0c;而游戏制作公司Epic Games CEO Tim Sweeney的还击更是让这个话题热上加热。 “搞一次在线守…...

阶段小结2022

工作马上一年&#xff0c;对于一年工作能力提升可能逐步在提升&#xff0c;业务能力也在慢慢提升&#xff0c;虽然没有一年前想象的飞起状态&#xff0c;但是刚接触这一行&#xff0c;希望越来越好。 之前每次的遇到的问题其实都会在笔记或者博客中记录&#xff0c;但是没有整体…...

linux0.12-8-11-vsprintf.c

[383页] 1、 这一小节可以不看代码如何实现&#xff0c;因为标准的C库函数&#xff1b; 2、 等自己看完的这本书&#xff0c;有兴趣过来研究研究也是可以的。 8-11 vsprintf.c程序 8-11-1 功能描述 该程序主要包括vsprintf(),用于对参数产生格式化的输出。由于该函数是C函数…...

Node.js 与 WebAssembly

目录 1、简介 2、关键概念 3、生成WebAssembly模块 4、如何使用它 5、与操作系统交互 1、简介 首先&#xff0c;让我们了解为什么WebAssembly是一个很棒的工具&#xff0c;并学会自己使用它。 WebAssembly是一种类似汇编的高性能语言&#xff0c;可以从各种语言编译&…...

OpenCL编程指南-4.4矢量操作符

矢量操作符 如下描述了可用于矢量数据类型或矢量和标量数据类型组合的各类操作符。 算术操作符 算术操作符&#xff08;加&#xff08;)、减&#xff08;–)、乘&#xff08;*&#xff09;和除&#xff08;/)&#xff09;&#xff0c;可以作用于内置整数、浮点标量和矢量数…...

索洛模型(二)

索洛模型(二) 文章目录 索洛模型(二)[toc]1 事实2 假设2.1 对生产函数的假设2.2对投入要素的假设 3 索洛模型的动态学3.1 k k k的动态学3.2 平衡增长路径 4 储蓄率变化的影响4.1 对产出的影响4.2 对消费的影响 索罗经济增长模型&#xff08;Solow growth model&#xff09;&am…...

【多微电网】基于粒子群优化算法的面向配电网的多微电网协调运行与优化(Matlab代码实现)

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

使用Atmel Studio开发Arduino的ATmega328P单片机

摘要&#xff1a;我们知道Arduino开发板常用的芯片是Atmel公司生产的AVR微控制器系列。最常见的是ATmega328P&#xff0c;被广泛用于Arduino Uno开发板。其他常用的AVR芯片包括ATmega2560和ATmega32U4。使用Arduino平台开发AVR的单片机非常方便。Arduino IDE提供了一个非常简洁…...

docker基础命令

查找镜像 docker search nginx 拉取镜像 不指定镜像版本的话默认拉取最新的版本&#xff0c;可以在dockerhub上查看镜像的版本 dockerhub地址:Docker docker pull nginx docker pull nginx:1.23 查看镜像列表 docker images 打包镜像 打包的镜像可以迁移到其它的主机上部署 …...

数组名+1和数组名+1的区别

数组名和&数组名区别 #include <stdio.h>int main() {int a[5] {1,2,3,4,5};int *ptr (int *)(&a 1);printf("%d,%d,%d\n",*(a 4),*(ptr - 1),*ptr); // 2 5 为什么是5printf("数组a[4]的地址%p,(ptr-1)地址%p, ptr的地址%p",(a 4)…...

开放原子训练营(第三季)inBuilder低代码开发实验室初体验

一、活动介绍 开放原子训练营开启inBuilder低代码实验室活动。无论您是计算机行业相关从业者、低代码开发爱好者还是普通用户&#xff0c;都可以基于inBuilder低代码开发平台社区版&#xff08;基于UBML开源项目的一个可以广泛使用的发行版&#xff09;&#xff0c;体验向导式、…...

sql数据定义语句(cascade,set,null,no action的区别)

&#xff08;一&#xff09;ADD 基本格式&#xff1a; ALTER TABLE <表名> ADD 新属性名 新属性类型 例&#xff1a;alter table s1 add tele char&#xff08;12&#xff09;&#xff1a;增加一个电话号码&#xff08;tele&#xff09;属性 注&#xff1a; 新增的属…...

Java进程(基础)

基本概念 1、进程&#xff1a;程序的执行过程 2、线程&#xff1a;一个进程可以有单个线程也就是我们说的单线程&#xff0c;还可以有多个线程也就是我们说的多线程&#xff0c; 线程 1、当一个类继承了Thread类就可以当成一个线程用 2、我们会重写run方法写上我们自己的业务…...

Android之 Activity活动详解

一 四大组件 1.1 Activity组件&#xff0c;它一个单独的窗口&#xff0c;程序流程都必须在Activity中运行。 1.2 service组件&#xff0c;用于在后台完成用户指定的操作。 1.3 content provider组件&#xff0c;会为所有的应用准备一个内容窗口&#xff0c;并且保留数据库、…...

车载软件架构——闲聊几句AUTOSAR BSW(五)

我是穿拖鞋的汉子,魔都中坚持长期主义的工程师。 老规矩,分享一段喜欢的文字,避免自己成为高知识低文化的工程师: 我们并不必要为了和谐,而时刻保持通情达理;我们需要具备的是,偶尔有肚量欣然承认在某些方面我们可能会有些不可理喻。该有主见的时候能掷地有声地镇得住场…...

APP图标尺寸规范一文了解清楚

在进行图标设计前&#xff0c;熟知手机 app 图标尺寸规范&#xff0c;能更好地去针对不同平台设计出更极致的图标。当前智能手机系统主要以 iOS 及 Android 为主&#xff0c;APP 图标是产品给用户的第一印象&#xff0c;图标视觉设计的美感与吸引力&#xff0c;与用户是否选择下…...

KubeBlocks SQL Server(MSSQL) Kubernetes Operator 高可用实现

KubeBlocks SQL Server(MSSQL) K8s Operator 高可用实现 背景 Microsoft SQL Server&#xff08;MSSQL&#xff09;是由微软开发的一款关系型数据库管理系统。最初仅支持在 Windows 平台上运行&#xff0c;自 2017 版本起开始支持 Linux 系统&#xff0c;这一变化为 MSSQL 的…...

某讯滑块验证码VMP架构探秘-从字节码到指令集

1. 某讯滑块验证码VMP架构初探 第一次看到某讯滑块验证码的VMP架构时&#xff0c;我就像发现了一个黑盒子。这个黑盒子会吃掉JavaScript代码&#xff0c;吐出一堆难以理解的字节码。最有趣的是&#xff0c;这个黑盒子还会变形——它的指令集居然会动态变化&#xff01;这让我想…...

【词汇专栏】AGI vs ANI vs ASI:人工智能的三种“等级“,我们现在在哪里?

AGI vs ANI vs ASI&#xff1a;人工智能的三种"等级"&#xff0c;我们现在在哪里&#xff1f; 马斯克说 AGI 即将到来。OpenAI 说他们的使命是安全地构建 AGI。科学家们警告 ASI 可能危及人类。这三个缩写词到底是什么意思&#xff1f;我们现在处于哪个阶段&#xff…...

面了个新人连Agent如何进行冷启动都不知道

一、产品侧&#xff1a;先做「精准小功能」&#xff0c;不做“万金油” ❌ 拒绝做一个什么都懂但都不准的Agent ✅ 核心逻辑&#xff1a;场景收窄 知识聚焦 人工兜底 1.只攻一个垂直场景 ToB方向&#xff1a;比如“合同审核Agent”. “电商售后Agent”&#xff0c;场景越…...

手把手教你用GPT-oss:20b:CSDN平台图文教程,小白也能快速部署

手把手教你用GPT-oss:20b&#xff1a;CSDN平台图文教程&#xff0c;小白也能快速部署 想体验接近GPT-4级别的智能对话&#xff0c;但又担心数据隐私、网络延迟或持续付费&#xff1f;今天&#xff0c;我将带你通过CSDN平台&#xff0c;在几分钟内免费部署一个完全开源、本地运…...

TCP八股

文章目录TCPTCP连接如何确保可靠性确认应答序号与确认序号超时重传连接管理三次握手(建立连接)四次挥手(断开连接)滑动窗口快速重传流量控制拥塞控制TCP和UDP的区别UDP怎么实现可靠传输TCP连接三次握手的过程, 为什么是三次, 可以是两次或者更多吗?TCP连接四次挥手的过程, 为什…...

Go语言的sync.RWMutex表现真实

Go语言的sync.RWMutex表现真实 在并发编程中&#xff0c;锁机制是保证数据一致性的核心工具之一。Go语言的sync.RWMutex通过读写分离的设计&#xff0c;在高并发场景下表现出色&#xff0c;既提升了性能&#xff0c;又确保了线程安全。它的表现不仅体现在高效的锁竞争管理上&a…...

从真题到实战:第15届蓝桥杯国赛Scratch核心考点深度拆解

1. 蓝桥杯Scratch国赛的核心价值与备赛策略 对于Scratch编程学习者来说&#xff0c;蓝桥杯国赛就像一场编程思维的"奥运会"。我辅导学生参赛多年&#xff0c;发现很多孩子容易陷入"刷题陷阱"——反复练习题目步骤却不得要领。实际上&#xff0c;国赛考察的…...

终极跨平台串口调试工具:5个秘诀让硬件调试效率翻倍

终极跨平台串口调试工具&#xff1a;5个秘诀让硬件调试效率翻倍 【免费下载链接】SerialPortAssistant This project is a cross-platform serial port assistant. It can run on WINDOWS, linux、android、macos system. 项目地址: https://gitcode.com/gh_mirrors/se/Seri…...

5分钟快速上手:Windows游戏文本提取神器Textractor终极指南 [特殊字符]

5分钟快速上手&#xff1a;Windows游戏文本提取神器Textractor终极指南 &#x1f3ae; 【免费下载链接】Textractor Extracts text from video games and visual novels. Highly extensible. 项目地址: https://gitcode.com/gh_mirrors/te/Textractor Textractor是一款功…...