hash(计算CRC64或MD5)

hash命令用于计算本地文件的MD5或CRC64。

重要

从ossutil 1.6.16版本开始,命令行中Binary名称支持直接使用ossutil,您无需根据系统刷新Binary名称。如果您的ossutil版本低于1.6.16,则需要根据系统刷新Binary名称。更多信息,请参见命令行工具ossutil命令参考

命令格式

ossutil hash localfile [--type=<value>]

参数及选项说明如下:

配置项

说明

localfile

本地文件的完整路径。

--type

数据计算类型。取值如下:

  • md5:计算本地文件的MD5。

    取值为MD5时,会同时输出文件的MD5以及Content-MD5值。Content-MD5值是在计算MD5值获得128比特位数字的基础上,对该数字进行Base64编码得到的值。关于Content-MD5的更多信息, 请参见RFC1864

  • crc64(默认值):计算本地文件的CRC64。

    关于CRC64的计算标准,请参见ECMA-182标准

上传文件到目标Bucket后,文件的CRC64和MD5值有如下注意事项:

  • 您可以通过stat命令中X-Oss-Hash-Crc64ecma字段和Content-Md5字段分别获取该文件的CRC64和Content-MD5值。更多信息,请参见stat(查看Bucket和Object信息)

  • 在OSS支持CRC64校验之前上传至Bucket内的文件,不支持通过stat命令查看文件的CRC64值。

  • 对于通过追加上传以及分片上传方式上传的文件, 不支持通过stat命令查看这两种类型文件的Content-MD5值。

使用示例

  • 计算本地文件test.txt的CRC64

    ossutil hash test.txt --type=crc64
    CRC64-ECMA                  : 295992936743767023
  • 计算本地文件test.txt的MD5

    ossutil hash test.txt --type=md5
     MD5                         : 01C3C45C03B2AF225EFAD9F911A33D73
     Content-MD5                 : AcPEXAOyryJe+tn5EaM9cw==