在 Unix/Linux 中分辨两个文件内容是否相同的最快速方法


假设我们在名为dir1的目录中有两个文件,并且这两个文件最初是不同的。不同处在于它们包含的不同文本。

文件夹中的文件 −

immukul@192 dir1 % ls -ltr
total 16
-rw-r--r-- 1 immukul staff 7 Jul 7 10:37 2.txt
-rw-r--r-- 1 immukul staff 8 Jul 8 19:05 3.txt

第一个文件(2.txt) 中的内容类似于下面这样 −

immukul@192 dir1 % cat 2.txt
orange

第二个文件(2.txt) 中的内容类似于下面这样 −

immukul@192 dir1 % cat 3.txt
uorange

我们可以轻松地使用 diff 命令来检查它们是否有不同之处。考虑下面所示的命令 −

diff 2.txt 3.txt

输出

1c1
< orange
---
> uorange

但是在文件内容完全相同的情况下,diff 命令不会返回任何输出。

在这种情况下,建议使用cmp命令。cmp命令是 Linux 实用程序命令,用于比较两个文件。

命令

cmp --silent 2.txt 3.txt || echo "Difference in Files"

输出

immukul@192 dir1 % cmp --silent 2.txt 3.txt || echo "Difference in Files"
Difference in Files

更新于: 29-Jul-2021

592 次浏览

Kickstart Your Career

通过完成课程获得认证

开始
广告