【问题标题】:Is the md5sum linux command working right?md5sum linux 命令工作正常吗?
【发布时间】:2009-10-22 03:32:23
【问题描述】:

根据维基百科,一个空字符串的md5和是d41d8cd98f00b204e9800998ecf8427e

我用我的 md5 库确认了这一点

但是,当我运行时

echo "" | md5sum

在我的 linux shell 中,我得到 68b329da9893e34099c7d8ad5cb9c940 -

事实上,我的哈希值都不匹配 md5sum 命令的输出。

对这种差异有什么想法吗?

【问题讨论】:

    标签: linux shell md5


    【解决方案1】:

    使用该命令,您正在计算单个换行符的 md5sum。试试吧:

    echo -n "" | md5sum
    

    【讨论】:

      【解决方案2】:

      你必须消除 echo 产生的新行

      $ echo -n '' | md5
      d41d8cd98f00b204e9800998ecf8427e
      

      【讨论】:

        【解决方案3】:

        试试:

        echo -n | md5sum
        

        如果没有'-n',echo 会输出一个换行符,md5sum 会对其进行适当处理。

        【讨论】:

          【解决方案4】:

          使用更便携的 printf

          printf "" | md5sum
          

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2018-10-28
            • 1970-01-01
            • 2015-01-11
            相关资源
            最近更新 更多