Diff

diff 和 sum 實用程序之間的區別

  • October 2, 2021

我們使用 diff 來查找兩個文件之間的差異。我們使用校驗和實用程序來查找雜湊並稍後進行比較。在這方面,我有一些問題:

  1. 我們可以區分任何類型的文件嗎?例如,我可以將 MP3 文件與 diff 進行比較嗎?我可以找到 MP3 文件的雜湊值。但是我可以使用 diff 來檢查它們的完整性嗎?
  2. diff 如何處理非文本文件?
  3. 如何使用 diff 比較兩個不同目錄中的所有文件?如果某些文件損壞或被篡改,diff 會報告它嗎?
  4. 如何找到整個目錄的校驗和進行比較?

提前致謝..!

當某些要點包含多個問題時,製作編號列表有什麼意義?我試過數問題標記並用它們來編號我的答案

  1. 是的
  2. 是的 - 但您通常只會被告知文件不同。
  3. 它會告訴你文件是二進制的並且不同
  4. 編寫一個循環遍歷文件的命令
  5. 這不是特別明確的定義,您可能對 Get checksum of directory on bash和/或Diffing two directorys based on checksums 感興趣?

要比較二進製文件,您可能會得到更好的結果cmp,但這也不關心實際類型。如果您真正想要的是找到精確的重複項,請查看fdupes/ jdupes。如果您還需要查找相似的、非精確的重複項,您將需要可以對文件進行指紋辨識並比較指紋的東西。我不知道任何此類用於 mp3 的工具(或更一般的音頻 - 我可以想像有一組不同格式的音頻文件,其中一些可能是相同的歌曲)文件。

引用自:https://unix.stackexchange.com/questions/671509