Bash

在 bash 上獲取目錄的校驗和

  • March 17, 2019

我在想:

  1. 是否可以創建目錄的校驗和(使用 md5sum 之類的東西)
  2. 是否可以為目錄中的每個文件遞歸創建校驗和(然後列印出來)?
  3. 或兩者?

我正在使用 bash

md5sum但是,不會將目錄作為輸入

tar cf - FOO | md5sum

將對它進行校驗和,如果文件在 FOO 中的任何位置發生更改,校驗和也會更改,但您不會有任何關於哪個文件的提示。如果任何文件元數據發生變化(權限、時間戳等),校驗和也會發生變化。

您可以考慮使用:

find FOO -type f -exec md5sum {} \;  > FOO.md5

這將對每個文件單獨進行 md5,並將結果保存在 FOO.md5 中。這樣可以更輕鬆地檢查哪個文件已更改。此變體僅取決於文件​​內容,而不取決於元數據。

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