diff
是一个 Linux 下的命令行工具,用于比较文本文件或目录之间的差异。它会逐行比较两个文件的内容,并输出它们之间的不同之处。diff
命令通常用于查找文件间的差异,特别是用于比较文件的修改,合并文件或者检查文件的一致性。
基本用法:
bash
diff file1 file2
这将比较 file1
和 file2
,并显示其不同之处。
假设有两个文本文件 file1.txt
和 file2.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 中常被用来查看文件差异。