Linux 中的 diff
命令
diff
是一个非常方便的命令。假定有两个文件,它们包含几乎相同的信息,你没有办法找出区别。
diff
会处理文件,然后告诉你有差异的地方。
假定有两个文件: dogs.txt
和 moredogs.txt
。它们的区别是: moredogs.txt
比前者多了一条狗狗的名字:
diff dogs.txt moredogs.txt
会告诉你后者多了一行,在第 3 行有 Vanille
这一行:
如果你改变两个文件的顺序,它会告诉你后者的第三行丢失了,也就是 Vanille
那一行:
使用 -y
参数会逐行对比两个文件:
你可能更熟悉 -u
参数,因为在 Git 版本管理系统中,它一样是用来显示不同版本文件差异的:
对于目录,比较的方式是一样的。你必须使用 -r
选项来进行递归比较(进入子目录):
如果你只对哪个文件存在差异感兴趣,而非关注文件的内容,可以使用 r
和 q
参数:
它还支持更多参数,你可以用 man 页面来探索,只需键入 man diff
: