macOS 计算校验和
shasum -a 256 filename # 计算文件的 SHA 256 校验和
shasum -a 256 -c checksum.txt # 对 checksum.txt 中的校验和进行验证
checksum.txt 文件的例子:
483a8203d11053fe18f89bb4d95aaf97c4d6e4203a546d0f81efe19c5b221638 BTSync-1.4.111.exe
f3b3095d5b7021157ada032040144e715621585864e979ba53a4697be8918ae3 btsync_i386-1.4.111.tar.gz
6ea03cd2f60177baca58c701b80e1abf44b7c42fc4ec5b8bcfd3b266876e832f btsync_x64-1.4.111.tar.gz
758cb2e3b21a21297a6fc46ca36999b2c7c170939b366e012af62a2ca953179c btsync_glibc23_i386-1.4.111.tar.gz
921c47be0f60a3c88e8452a1de5252b2cbf1c8280d57a011f400d3cb9df676cc btsync_glibc23_x64-1.4.111.tar.gz
1c7df900e4a64d7f349605b3406c183399fb09a6b96278ae04817e2fcce0acf4 BTSync-1.4.111.dmg
c29133157b30ffbfb940a1c24da658779a35ed3e50b69c21b3d911a66434aa6f btsync_android-1.4.65.apk
校验码和文件名之间有两个空格
下面是对 shasum --help 命令结果的翻译。
用法:shasum [选项]... [文件]...
打印或检查SHA校验和。
当没有文件,或者文件为"-"时,读取标准输入。
-a, --algorithm 1(默认),224,256,384,512,512224,512256
-b, --binary 以二进制模式读取
-c, --check 从文件中读取SHA校验和并检查它们
--tag 创建BSD风格的校验和
-t, --text 以文本模式读取(默认)
-U, --UNIVERSAL 以通用换行符模式读取
在Windows/Unix/Mac上生成相同的摘要
-0, --01 以BITS模式读取
ASCII '0' 解释为0位,
ASCII '1' 解释为1位,
忽略所有其他字符
以下五个选项仅在验证校验和时有用:
--ignore-missing 对于缺失的文件不失败或报告状态
-q, --quiet 对于每个成功验证的文件不打印OK
-s, --status 不输出任何内容,状态码显示成功
--strict 对格式不正确的校验和行退出非零
-w, --warn 对格式不正确的校验和行发出警告
-h, --help 显示此帮助并退出
-v, --version 输出版本信息并退出
当验证SHA-512/224或SHA-512/256校验和时,使用-a选项明确指定算法,例如
shasum -a 512224 -c 校验和文件
校验和是根据FIPS PUB 180-4中的描述计算的。在检查时,输入应为此程序的先前输出。默认模式是为每个文件打印一行校验和,一个表示类型的字符(对于二进制为`*`,对于文本为空格,对于通用为`U`,对于BITS为`^`)和名称。如果文件名包含换行符或反斜杠,则该行以`\\`字符开始,然后将其替换为两个字符序列`\n`和`\\`。
请将shasum错误报告给mshelor@cpan.org。