cksum
在类似Unix的操作系统上,cksum命令计算每个输入文件的循环冗余校验(CRC)和字节数,并将其写入标准输出。 本文档介绍了cksum的GNU / Linux版本。
查看英文版
1 cksum 运行系统环境
2 cksum 说明
3 cksum 语法
4 cksum 例子
cksum 运行系统环境
Linux
cksum 说明
文件的校验和是一种检查其数据从一个地方传输到另一个地方时是否已损坏的简单方法。如果文件的校验和值在传输前后相同,则不太可能偶然发生任何数据损坏,例如由于信号噪声。
假设您有一个文件myfile.txt,其中包含以下文本:
This is my original file.
您可以使用cksum计算校验和:
cksum myfile.txt
...这将是输出:
4164605383 26 myfile.txt
在这里,4164605383是校验和,26是数据量(以字节为单位)。如果将文件内容更改为此:
This is no longer my original file.
...然后再次运行cksum,您将看到以下内容:
cksum myfile.txt
632554699 36 myfile.txt
校验和有很大的不同,我们还可以看到还有十个字节的数据。
即使字节数与原始字节相同,校验和也将不同:
This is a corrupted file.
cksum myfile.txt
2256884274 26 myfile.txt
...而且即使只有一个字符不同,它也会发生巨大变化:
This is my original file?
cksum myfile.txt
3832066352 26 myfile.txt
重要:简单的校验和(例如由cksum工具生成的校验和)仅对检测意外数据损坏有用。这并不是要防止恶意更改文件。事实证明,攻击者可以精心修改文件,以产生相同的cksum校验和。因此,如果您需要绝对确定文件与原始文件相同,请使用更强大的方法。我们强烈建议使用SHA256 算法来验证数据完整性。您可以使用GNU rhash等工具生成和验证SHA256 哈希和。
查看英文版
cksum 语法
cksum命令的命令语法非常简单。指定一个或多个要检查的文件:
cksum [FILE]...
...或一个选项:
cksum [OPTION]
如果您运行的cksum没有文件名和选项,它将为从标准输入读取的数据创建校验和。
Options
FILE |
您要检查的文件名。 |
--help |
显示帮助消息,然后退出。 |
--version |
显示版本信息,然后退出。 |
查看英文版
cksum 例子
cksum file.txt
计算file.txt的校验和和字节数,并输出值和文件名。输出将类似于以下内容:
1740057581 19 file.txt
在这里,1740057581是校验和,19是文件中的字节数,file.txt是文件名。
cksum myfile.txt myfile2.txt
上面的命令将为文件myfile.txt和myfile2.txt生成校验和和字节数。输出将类似于以下内容:
3832066352 26 myfile.txt 3722946153 34 myfile2.txt
cksum < myfile.txt
上面的命令会将myfile.txt的内容重定向到cksum,它将从标准输入读取数据并输出校验和和字节数。
cat myfile.txt | cksum
上述命令将猫的内容的myfile.txt和管输出到校验和,其从标准输入读取它。
cksum
运行不带任何选项的cksum将允许您键入所需的任何内容,然后按Enter键以换行。输入完文本后,可以按Ctrl-D表示标准输入已结束,并且cksum将输出您输入的文本的校验和和字节数。
查看英文版