Linux 使用 md5sum 命令生成 MD5 字符串或哈希值
您可以使用md5sum命令来计算和检查 MD5 消息摘要。这是大多数现代 Linux 发行版上的默认工具。它为给定的字符串、单词或文件名生成 md5 哈希。
教程详细信息 | |
---|---|
难度等级 | 简单的 |
Root 权限 | 不 |
要求 | Linux 或终端 |
类别 | 命令 |
操作系统兼容性 | AIX • Alma • Alpine • Arch • BSD • Debian • Fedora • FreeBSD • HP-UX • Linux • macOS • Mint • NetBSD • OpenBSD • openSUSE • Pop!_OS • RHEL • Rocky • Stream • SUSE • Ubuntu • Unix • WSL |
预计阅读时间 | 3 分钟 |
使用 md5sum 命令创建 md5 字符串
使用以下语法:
VAR="some_value" echo -n 'Your-String-Here' | md5sum echo -n "${VAR}" | md5sum echo -n 'some-value' | md5sum [options]
在此示例中,为 wpblog 字符串创建 md5 哈希,以供memcached 服务器使用
echo -n 'wpblog' | md5sum
示例输出:
6afedb7a8348eb4ebdbe0c77ef92db4c -
您可以将其存储在名为 hash 的 bash shell 变量中,如下所示:
md5="set-string-here" hash="$(echo -n "$md5" | md5sum )" echo "$hash"
传递给 echo 命令的选项-n用于避免添加换行符。想要在 GNU/Linux 上显示 BSD 样式的 MD5 校验和?请尝试以下语法:
$ echo -n 'word1-word2-foo' | md5sum --tag
如果您已安装 openssl,请尝试:
echo -n 'string-here' | openssl md5 echo -n "${VAR}" | openssl md5
警告: MD5 已被弃用一段时间了。使用加盐的 md5 作为密码是一个错误的想法。请不要使用它。使用 MD5 进行文件完整性检查也不再推荐。此页面因历史原因而存在。如果可能,请使用 SHA-256 或更高版本。
从文本文件检查 md5 校验和
从名为 input.file.md5 的文件中读取校验和的语法如下:
请注意,MD5 和的计算方式如 RFC 1321 中所述。检查时,输入应为该程序的先前输出。默认模式是打印一行,其中包含校验和、空格、表示输入模式的字符('*' 表示二进制,
' ' 表示文本或二进制不重要)和每个文件的名称。
$ md5sum -c --ignore-missing input.file.md5
$ md5sum --check --ignore-missing input.file.md5
测试或生成 MD5 字符串的其他选项
不想为每个成功验证的文件打印 OK?请尝试传递选项--quiet:
$ md5sum --quiet -c --ignore-missing input_md5_sum_file
同样的方式不输出任何内容,状态代码通过将--status选项传递给 md5sum 命令来显示成功:
$ md5sum --status -c input_file
获取帮助
输入以下命令:
$ md5sum --help
我们将看到:
Usage: md5sum [OPTION]... [FILE]... Print or check MD5 (128-bit) checksums. With no FILE, or when FILE is -, read standard input. -b, --binary read in binary mode -c, --check read MD5 sums from the FILEs and check them --tag create a BSD-style checksum -t, --text read in text mode (default) -z, --zero end each output line with NUL, not newline, and disable file name escaping The following five options are useful only when verifying checksums: --ignore-missing don't fail or report status for missing files --quiet don't print OK for each successfully verified file --status don't output anything, status code shows success --strict exit non-zero for improperly formatted checksum lines -w, --warn warn about improperly formatted checksum lines --help display this help and exit --version output version information and exit GNU coreutils online help: <https://www.gnu.org/software/coreutils/> Full documentation at: <https://www.gnu.org/software/coreutils/md5sum> or available locally via: info '(coreutils) md5sum invocation'
推荐阅读和结论
我们学习了如何使用命令行选项在 Linux 或类 Unix 系统上计算和检查 MD5 消息摘要。有关更多信息,请参阅以下资源:
- 有关详细信息,请参阅 md5sum手册页或使用 man 命令离线阅读:
$ man md5sum