Hashsum
如何使用 md5sum 與不包含文件名的 md5 文件進行校驗和
我有 2 個文件 test.txt 和 test.txt.md5。我想驗證 test.txt 的校驗和。
gnu 工具 md5sum 需要具有以下格式的 md5 文件“
$$ md5-hash $$$$ space $$$$ space $$$$ filename $$" (md5sum -c test.txt.md5)。不幸的是,我的 test.txt.md5 只包含 md5 雜湊(沒有空格和文件名)。 如何將“test.txt.md5”文件中的雜湊值傳遞給“md5sum -c”命令?我想我必須使用標準輸入但是我看到的所有範例都嘗試重新創建 md5sum 文件格式
文件的內容是:
test.txt
:test
和
test.txt.md5
:d8e8fca2dc0f896fd7cb4cb0031ba249
像許多命令一樣,
md5sum
如果選項的值為-
(fromman md5sum
),則可以從標準輸入中讀取:列印或檢查 MD5(128 位)校驗和。沒有 FILE,或者當 FILE 為 - 時,讀取標準輸入。
由於您知道文件名,您可以簡單地列印 md5 文件的內容、幾個空格和名稱,然後將其傳遞給
md5sum
:$ cat test.txt.md5 5a6d311c0d8f6d1dd03c1c129061d3b1 $ md5sum -c <(printf "%s test.txt\n" $(cat test.txt.md5)) test.txt: OK
另一種選擇是將文件名添加到您的文件中:
$ sed -i 's/$/ test.txt/' test.txt.md5 $ md5sum -c test.txt.md5 test.txt: OK