題:
Windows軟件逐字節比較數千個文件
RockPaperLz- Mask it or Casket
2016-07-19 15:24:20 UTC
view on stackexchange narkive permalink

任何人都可以推薦Windows軟件,該軟件將遍歷目錄樹並將每個文件逐字節與另一個結構類似的樹進行比較。

要被視為相同,文件在兩棵樹中必須具有相同的名稱,內容和位置。

我需要知道的是哪些文件不同,第二棵樹中缺少哪些文件。 (如果它揭示了#2樹中的文件,而不是#1樹中的文件,那是一個不錯的選擇。)

我需要比較成千上萬個文件,跨越數百GB,因此速度和簡單很重要。可靠性和準確性是必不可少的

此問題與其他問題類似,但是我不需要逐行報告哪些內容每個文件中的不同。我還需要超越一棵樹的6個層次;該軟件必須遍歷整個樹。

它也與此問題類似,但是我需要比較文件的實際字節數。軟件不能假定兩個具有相同名稱(甚至具有相同日期和時間)的文件是相同的。

與開源軟件一樣,推薦使用免費軟件的建議,但是歡迎所有建議。

如果我理解正確,那麼您正在尋找重複的查找器。
逐字節說:校驗和大小比較是否也一樣?幾乎沒有兩個文件具有完全相同的大小和校驗和,但“字節差異”。
@Thomas問:“如果我理解正確,那麼您正在尋找重複的查找器。”好吧,不是真的,但是我知道你是怎麼看的。我希望99%的文件可以重複。此外,與重複文件查找器不同,所有文件必須在相應樹中的相同位置處才能被視為相同。
@Izzy問:“逐字節說:校驗和大小比較是否也一樣?”好問題。我很猶豫地說“是”,因為校驗和接近完美,但並不完美。我最近做了一些工作,發現不同數據集生成相同校驗和的頻率(當然,校驗和越長,越獨特)。同樣,生成校驗和仍然需要讀取每個文件。綜上所述,我願意接受使用校驗和的答案,特別是在有實際好處的情況下。
@RockPaperLizard Jupp :)好,是時候進行評論清理了-我已經開始了。仍然對xfer開放到Q:逐字節與校驗和,也許還有我留下的其他評論的一些細節。
您是否嘗試過[WinMerge](http://winmerge.org/)([鏈接的問題中有答案](http://softwarerecs.stackexchange.com/a/3295/2332))?
@defaultlocale是的。實際上,我更喜歡WinMerge2011(https://bitbucket.org/jtuc/winmerge2011/downloads),它是一個改進的版本。但是,不幸的是,無論使用哪個WinMerge版本,比較大型文件似乎都需要很長時間。 IIRC,比較兩個1GB文件大約需要一個小時。因此,其中只有50個需要2天。您是否知道有任何設置可以更快地處理大文件?
您需要嘗試從http://www.scootersoftware.com/進行比較
二 答案:
#1
+3
dhcgn
2016-07-28 20:10:36 UTC
view on stackexchange narkive permalink

如果相似結構樹是相同,則可以使用 Beyond Compare

該軟件可以輕鬆比較文件夾及其內容

Screenshot of application

謝謝。看起來很有趣,儘管價格昂貴。
#2
+1
Steve Barnes
2016-07-19 17:57:18 UTC
view on stackexchange narkive permalink

做您要尋找的最簡單的方法之一(不是逐字節,但是丟失任何東西的可能性很小)是為每棵樹生成一個完整的樹列表,每個樹都帶有指紋,例如MD5或SHA1文件。

然後您可以逐行比較兩個列表。

您甚至可以擴展此類腳本以讀取“主”樹指紋文件,並在處理比較樹時顯示 ,在以下目錄中的任何文件&目錄:

  1. 比較樹中缺少
  2. 在比較樹中但不在主目錄中
  3. 兩者中的文件但是使用不同的指紋(MD5 / SHA1)
  4. ol>

    需要做更多的工作才能創建一個僅在時間/日期/大小更改時才可以更新主樹中條目的工具。而且,當然,一旦有了“指紋”,以後便可以輕鬆,輕鬆地將您的主樹與其自身進行比較,以發現發生了什麼變化。

    儘管Windows不附帶python,但它很容易獲得,可從 www.python.org免費獲得。

對我來說,“簡單性很重要。可靠性和準確性至關重要”,這是我必鬚髮展的解決方案


該問答將自動從英語翻譯而來。原始內容可在stackexchange上找到,我們感謝它分發的cc by-sa 3.0許可。
Loading...