md5sum 计算md5值
在 Linux 中, 使用 MD5 值作为唯一性校验应该是最基本的了。
# 字符串
echo "abc" | md5sum
# 文件
md5sum /path/2/file.txt
计算字符串 md5 值相对简单, 直接使用标准库中的 md5
库就可以了
func MustMd5(s string) string {
h := md5.New()
_, err := io.WriteString(h, s)
if err != nil {
panic(err)
}
return fmt.Sprintf("%x", h.Sum(nil))
}
计算文件的就稍微多一个步骤, 就是读取文件内容。 读取完了, 直接丢到上一个函数中就可以了。
func MustMd5File(name string) string {
data, err := os.ReadFile(name)
if err != nil {
panic(err)
}
return MustMd5(string(data))
}