我有两个文件,我们称它们为md5s1.txt和md5s2.txt。两个文件都包含一个处理程序的输出结果。
find -type f -print0 | xargs -0 md5sum | sort > md5s.txt
在不同目录下使用命令。许多文件被重命名,但内容保持不变。因此,它们应该具有相同的md5sum。我想生成类似于
diff md5s1.txt md5s2.txt
但它应该仅比较每行的前32个字符,即仅比较md5sum而非文件名。具有相同md5sum的行应被视为相等。输出应以普通的diff格式呈现。
diff <(cut -b-80 dump.csv) <(cut -b-80 dump2.csv)
(这里,n
=80) - Nick Tcut
命令应该是(以字符为单位)diff <( cut -c-32 f1.txt | sort) <(cut -c-32 f2.txt | sort )
,也可以写成cut -b-32
或者cut -c1-32
等等(但是使用cut -d' ' -f1
比较方便,因为你不需要计算字符数)。另外,顺便说一下,所有这些diff
选项并不一定总是可用的(例如在macOS上没有-E
选项),但是diff
本身也无法解决OP的问题。最后再提一下,我实际上是使用fdupes
来解决OP最初的问题。 - michael