
我想知道兩個資料夾是否具有相同的 1:1 相同內容。這是因為我想驗證資料夾的複製/備份是否一致。
我怎樣才能做到這一點?如何快速、快速地比較兩個資料夾的內容?
答案1
您需要一個能夠比較資料夾的比較工具。我想說 Windows 上最受歡迎的一個是合併軟體。
如果您需要可以從命令列運行的東西,請參閱這個答案。
更新
一個幾乎盡可能快且非常靈活的更具體的答案是使用西格文Unix 命令列工具的版本:
diff -r dir1 dir2
如果你想使用 buitin 那麼嘗試比較:
forfiles /P %folder1Path% /S /C "cmd /c comp /a @path %folder2Path%\@file"
但我警告你,這很混亂。一方面,COMP 僅適用於單一資料夾,因此您必須自行處理遞歸(因此有很長的行)。對於另一個,它會在第一次比較後進行提示。
更新2
我不推薦做這個因為它只會在某些情況下更快。對其他人來說,這也是不正確的。因為您確實要求更快的版本,所以您也可以僅比較檔案的 md5 校驗和。為此,您將使用 Cygwin:
diff <(sort <(md5deep -r /directory/1/) |cut -f1 -d' ') <(sort <(md5deep -r /directory/2/) |cut -f1 -d' ')
但這只會帶來值得懷疑的好處,因為無論哪種方式它都將在主機上運行,因此我們不會節省頻寬。它會增加 CPU 使用率。如果你把它分解,你可以只在儲存時為檔案建立 md5,並且只在需要時執行 diff 部分。