Linux上diff命令

diff 是一个 Linux 下的命令行工具,用于比较文本文件或目录之间的差异。它会逐行比较两个文件的内容,并输出它们之间的不同之处。diff 命令通常用于查找文件间的差异,特别是用于比较文件的修改,合并文件或者检查文件的一致性。

基本用法:

bash 复制代码
diff file1 file2

这将比较 file1file2,并显示其不同之处。

假设有两个文本文件 file1.txtfile2.txt,内容如下:

file1.txt

bash 复制代码
Hello
This is a test file
It contains some text
Goodbye

file2.txt

bash 复制代码
Hello
This is a test file
It contains different text
Goodbye

使用 diff 命令比较这两个文件:

bash 复制代码
diff file1.txt file2.txt

输出结果将显示文件之间的差异,例如:

bash 复制代码
3c3
< It contains some text
---
> It contains different text

这里的输出表示在第 3 行发现了差异:file1.txt 的内容是 "It contains some text",而 file2.txt 的内容是 "It contains different text"。

更多选项:

  • -u--unified:生成统一的 diff 输出,更易读。
  • -r--recursive:比较目录及其子目录下的文件。
  • -q--brief:仅显示有无差异,不显示具体内容。
bash 复制代码
diff -u file1.txt file2.txt
diff -r dir1 dir2
diff -q file1.txt file2.txt

diff 命令对于检查文本文件的修改非常有用,特别是在版本控制系统如 Git 中常被用来查看文件差异。

相关推荐
Harm灬小海几秒前
【云计算学习之路】企业常用服务搭建:构建Apache WEB服务器
运维·服务器·学习·云计算·apache
大江东去浪淘尽千古风流人物6 分钟前
【Polaris-VIO】Docker 镜像跨硬件分发的隐藏陷阱:AVX-512、-march=native 与 CPU 指令集解耦边界
运维·docker·容器·slam·vio·avx-512
十子木7 分钟前
SSH 反向端口转发 (Remote Port Forwarding)
运维·ssh
AI云原生11 分钟前
远程控制软件进入协作阶段:ToDesk、向日葵、AnyDesk、RustDesk怎么选?
运维·服务器·网络·windows·docker·云原生·开源软件
java1234_小锋13 分钟前
Spring Boot 的嵌入式服务器(如 Tomcat)是如何启动的?如何替换为 Jetty 或 Undertow?
服务器·spring boot·tomcat
测试员周周7 小时前
【Appium 系列】第16节-WebView-H5上下文切换 — 混合应用的自动化难点
运维·开发语言·人工智能·功能测试·appium·自动化·测试用例
小辰记事本9 小时前
从零读懂RoCEv2数据包构造:从WQE到线缆上的完整旅程
服务器·网络·网络协议·rdma
小鹏linux10 小时前
Ubuntu 22.04 部署开源免费具有精美现代web页面的Casdoor账号管理系统
linux·前端·ubuntu·开源·堡垒机
在角落发呆10 小时前
Linux转发配置:解锁网络互联的核心密码
linux·运维·网络
齐潇宇11 小时前
Zabbix 7 概述与配置
linux·zabbix·监控告警