在 Linux 中比较文件差异,常用且高效的方法有以下几种,按使用场景从简单到高级说明:
diffdiff 是 Linux 中最基础、最通用的文件比较工具。
diff file1.txt file2.txt
输出示例:
3c3
< old line
---
> new line
说明:
< 表示第一个文件> 表示第二个文件c 表示修改(change)| 参数 | 作用 |
|---|---|
-u |
显示统一格式(推荐,适合补丁) |
-y |
并排显示 |
-i |
忽略大小写 |
-w |
忽略空白字符 |
-r |
递归比较目录 |
--color |
彩色输出(部分版本支持) |
示例:
diff -u file1.txt file2.txt
diff -y file1.txt file2.txt
vimdiff适合边看边改,程序员常用。
vimdiff file1.txt file2.txt
操作提示:
]c / [c:下一个/上一个差异:diffget / :diffput:合并差异:q 退出colordiffdiff 的彩色增强版。
sudo apt install colordiff # Debian/Ubuntu
colordiff file1.txt file2.txt
diff -r dir1/ dir2/
只比较文件名:
diff -rq dir1/ dir2/
meldsudo apt install meld
meld file1.txt file2.txt
特点:
cmpcmp file1 file2
无输出表示完全相同。
md5sum / sha256summd5sum file1 file2
| 场景 | 推荐工具 |
|---|---|
| 快速查看差异 | diff -u |
| 彩色输出 | colordiff |
| 边看边改 | vimdiff |
| 目录对比 | diff -r / meld |
| 新手/可视化 | meld |
如果你愿意,可以告诉我:
我可以给你更精确的命令示例。