LinuxEye - Linux系统教程

LinuxEye - Linux系统教程

当前位置: 主页 > Linux命令 >

Linux cksum命令参数及使用方法详解

时间:2013-06-17 17:13来源:www.linuxeye.com 编辑:LinuxEye 点击:
chsum(check sum)显示文件的校验和与字节数。 语法 cksum [--help][--version][文件...] 描述 cksum 命令 读取 File 参数指定的文件,并计算 32 位循环冗余校验(CRC)校验和每个文件的字节数。如果未
chsum(check sum)显示文件的校验和与字节数。

语法
cksum [--help][--version][文件...]

描述
cksum 命令读取 File 参数指定的文件,并计算 32 位循环冗余校验(CRC)校验和每个文件的字节数。如果未指定文件,则 cksum 命令读取标准输入。将校验和、字节数和文件名写到标准输出。如果使用标准输入,则忽略路径名和前导空格。

cksum可用于针对可信文件的精确副本比较通过噪声传输线路复制或通信的暂挂文件。通过 cksum 命令进行的比较可能不具有密码安全。然而,偶然破坏的文件将未必产生与原始文件相同的校验和。

cksum 命令使用与 sum 命令不同的算法计算 32 位 CRC 校验和。cksum 命令使用基于以太网标准帧检查的 CRC 算法。要获取有关以太网标准的更多信息,请参阅 AIX 5L Version 5.2 Communications Programming Concepts 中的 Understanding DLCETHER Protocol Support。
    注:cksum 命令符合 POSIX 1003.2 并且保证产生的校验和在所有符合 POSIX 1003.2 的系统上计算都相同。

以下生成的多项式定义 CRC 校验和编码:   
    G(x) = x32 + x26 + x23 + x22 + x16 + x12 + x11 + x10 + x8 + x7 + x5 + x4 + x2 + x + 1

以下过程从数学上定义符合给定的文件的 CRC 值:
要评估的 n 位被认为是 n-1 次的模 2 多项式 M(x)的系数。这些 n 位是来自文件的位。最高有效位是文件的第一个八位元的最高有效位。最后的位是最后八位元的最低有效位,使用零位填充(如果必要)来取得完整的八位元,后跟一个或多个八位元将文件的长度表示为二进制值,以最低有效八位元开始。最小号码的八位元能够表示此整数已使用。
M(x) 乘以 x32(就是左移位 32 位),然后使用模 2 除法除以 G(x) 产生 31 位的余数 R(x)。
R(x) 的系数被认为是一个 32 位序列。
补充位序列后,结果为 CRC。

退出状态
该命令返回以下出口值:
0     所有文件都已成功处理。
>0     发生错误。

范例
要显示linuxeye1.txt和linuxeye2.txt的校验和与大小,请输入:
cksum linuxeye1.txt linuxeye2.txt

如果linuxeye1.txt文件的校验和为195813694并包含36个字节,file2 文件的校验和为2777596196并包含26字节,则 cksum 命令显示:
# echo 'www.linuxeye.com/command/cksum.html' > linuxeye1.txt
# echo 'www.linuxeye.com/command/' > linuxeye2.txt
# cksum linuxeye1.txt linuxeye2.txt
195813694 36 linuxeye1.txt
2777596196 26 linuxeye2.txt

转载请保留固定链接: https://linuxeye.com/command/cksum.html

------分隔线----------------------------
标签:cksum
栏目列表
推荐内容