我试图通过在 ubuntu 中使用 shasum 来检查下载的真实性。我无法理解语法。
下面的代码有效
echo "<sha-hash> *filename" | shasum -a 256 -c
我想知道为什么我们在文件名前加上“*”(星号)。
我也尝试使用生成文件
shasum -a 256 filename > file.sha
shasum -a 256 -c file.sha
上面的代码也有效。当我打开file.sha
文件时,我看到了
<hash> <filename>
文件中没有星号。我尝试编写不带星号的第一条语句,但随后它抛出一个错误说明
shasum:标准输入:未找到格式正确的 SHA1 校验和行
如果系统支持,在文件名前加上星号表示
shasum
将文件视为二进制文件。如果文件应被视为文本文件,则应使用单个空白代替。Linux 在二进制文件和文本文件之间没有区别,所以你使用哪一个并不重要,但你不能忽略它。
所以你必须使用
散列后有两个空格:一个空格将散列与文件名分开,一个空格用于文本模式。