首頁 > 檔案與目錄管理 > sum

sum:計算檔案校驗和與區塊數

sum 命令計算並輸出檔案的 16 位元校驗和與 1KB 區塊數。它主要用於簡單檢查檔案的完整性或快速比較檔案是否已變更。

概述

sum 命令計算指定檔案的校驗和 (checksum) 與區塊 (block) 數,並將結果輸出到標準輸出。這些值可用於快速檢查檔案內容是否已變更。預設情況下,它使用 512 位元組的區塊並以 BSD 相容模式進行計算。

主要特點

  • 計算檔案的 16 位元校驗和
  • 計算檔案的區塊數(預設 512 位元組或 1KB)
  • 簡單的檔案完整性檢查與變更檢測
  • 支援 BSD 和 System V 相容模式

主要選項

sum 命令提供了一些選項來更改校驗和的計算方式。

校驗和模式

生成的命令:

請試著組合命令。

這個 Django 應用程序是一個技術指南文檔,旨在為用戶輕鬆解釋 Linux 的各種命令。

`sum` 執行命令。

請將上述選項組合在一起,與 AI 一同虛擬執行命令。

使用範例

了解使用 sum 命令計算檔案校驗和與區塊數的各種方法。

基本校驗和計算 (BSD 模式)

echo 'Hello World' > testfile.txt
sum testfile.txt

計算檔案的預設 (BSD) 校驗和與區塊數。(先建立 testfile.txt 後執行)

System V 模式校驗和計算

sum -s testfile.txt

使用 System V 相容模式計算檔案的校驗和與區塊數。

計算多個檔案的校驗和

echo 'Another file' > anotherfile.txt
sum testfile.txt anotherfile.txt

同時計算多個檔案的校驗和。

從標準輸入計算校驗和

echo 'Data from stdin' | sum

計算通過管道傳遞到標準輸入的資料的校驗和。

提示與注意事項

sum 命令適用於簡單用途,但對於現代檔案完整性檢查,建議使用更強大的工具。

安全警告

sum 產生的 16 位元校驗和容易發生碰撞 (collision)。也就是說,內容不同的兩個檔案可能具有相同的校驗和。因此,它不適合用於重要資料的完整性驗證。

  • 安全性低: 16 位元校驗和容易發生碰撞,難以偵測惡意變更。
  • 用途有限: 主要用於開發過程中檔案的快速變更檢測等非安全用途。

替代命令

為了進行更強大、更安全的檔案完整性檢查,建議使用以下命令:

  • md5sum:計算 MD5 雜湊值(32 位十六進位字元)。
  • sha1sum:計算 SHA-1 雜湊值(40 位十六進位字元)。
  • sha256sum:計算 SHA-256 雜湊值(64 位十六進位字元)。
  • cksum:計算 CRC32 校驗和。比 sum 更強大,但比 md5/sha 系列弱。

理解區塊大小

sum 命令的區塊數是檔案大小除以區塊大小的值。BSD 模式以 512 位元組為基準,System V 模式以 1024 位元組 (1KB) 為基準。

  • BSD 區塊: 512 位元組(預設值)
  • System V 區塊: 1024 位元組 (1KB)


相同類別命令