国际访客建议访问 Primers 编程伙伴 国际版站点 > Bash 教程 > sha1sum 以获得更好的体验。

# Bash 的 sha1sum 命令

sha1sum [OPTION]... [FILE]...

!subtitle:功能

计算或校验 SHA1 值。

!subtitle:类型

可执行文件(/usr/bin/sha1sum),属于 coreutils

!subtitle:参数

  • OPTION 选项:

    • -b, --binary - 以二进制模式读取文件;类 UNIX 系统下始终是二进制模式

    • -c, --check - 从文件中读取 SHA1 值进行校验

    • --tag- 生成 BSD 风格的输出

    • -t, --text - 以文本模式读取文件;类 UNIX 系统下不存在文本模式,此选项无效

    • -z, --zero - 以空字符(\0)作为行的结尾,而不是换行符(\n

    • --ignore-missing - 校验时忽略缺失的文件

    • --quiet - 校验时不打印成功的消息

    • --status - 校验时不打印任何消息;可以通过返回值检查是否成功

    • --strict - 校验时严格检查格式

    • -w, --warn - 校验时遇到格式不正确的行时产生警告

    • --help - 显示帮助

    • --version - 显示版本

  • FILE - 文件列表

# 示例

!subtitle:计算 SHA1 值

$ sha1sum 1.txt                                     # 单个文件
59cb445bf92dffdd01cd01154a521d39189dadb3  1.txt
$ sha1sum 1.txt 2.txt 3.txt                         # 多个文件
59cb445bf92dffdd01cd01154a521d39189dadb3  1.txt
668079210932eb19a1b4995a7d95c71ad2e0a83c  2.txt
22596363b3de40b06f981fb85d82312e8c0ed511  3.txt
$ sha1sum --tag 1.txt 2.txt 3.txt                   # BSD 风格
SHA1 (1.txt) = 59cb445bf92dffdd01cd01154a521d39189dadb3
SHA1 (2.txt) = 668079210932eb19a1b4995a7d95c71ad2e0a83c
SHA1 (3.txt) = 22596363b3de40b06f981fb85d82312e8c0ed511

!subtitle:校验 SHA1 值

$ sha1sum 1.txt 2.txt 3.txt > sha1.txt
$ sha1sum -c sha1.txt                               # 校验
1.txt: OK
2.txt: OK
3.txt: OK

# 相关命令

命令 说明
b2sum 计算和校验 BLAKE2 值
md5sum 计算和校验 MD5 值
sha224sum 计算和校验 SHA224 值
sha256sum 计算和校验 SHA256 值
sha384sum 计算和校验 SHA384 值
sha512sum 计算和校验 SHA512 值

# 推荐阅读

# 手册

SHA1SUM(1)                       User Commands                      SHA1SUM(1)

NAME
       sha1sum - compute and check SHA1 message digest

SYNOPSIS
       sha1sum [OPTION]... [FILE]...

DESCRIPTION
       Print or check SHA1 (160-bit) checksums.

       With no FILE, or when FILE is -, read standard input.

       -b, --binary
              read in binary mode

       -c, --check
              read checksums 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

       The sums are computed as described in FIPS-180-1.  When  checking,  the
       input  should  be a former output of this program.  The default mode is
       to print a line with: checksum, a space, a character  indicating  input
       mode  ('*'  for binary, ' ' for text or where binary is insignificant),
       and name for each FILE.

       Note: There is no difference between binary mode and text mode  on  GNU
       systems.

BUGS
       Do not use the SHA-1 algorithm for security related purposes.  Instead,
       use  an  SHA-2  algorithm,  implemented  in  the programs sha224sum(1),
       sha256sum(1), sha384sum(1), sha512sum(1), or the BLAKE2 algorithm,  im‐
       plemented in b2sum(1)

AUTHOR
       Written by Ulrich Drepper, Scott Miller, and David Madore.

REPORTING BUGS
       GNU coreutils online help: <https://www.gnu.org/software/coreutils/>
       Report any translation bugs to <https://translationproject.org/team/>

COPYRIGHT
       Copyright  ©  2023  Free Software Foundation, Inc.  License GPLv3+: GNU
       GPL version 3 or later <https://gnu.org/licenses/gpl.html>.
       This is free software: you are free  to  change  and  redistribute  it.
       There is NO WARRANTY, to the extent permitted by law.

SEE ALSO
       cksum(1)

       Full documentation <https://www.gnu.org/software/coreutils/sha1sum>
       or available locally via: info '(coreutils) sha1sum invocation'

GNU coreutils 9.4                 April 2024                        SHA1SUM(1)
本文 更新于: 2025-11-27 09:38:15 创建于: 2025-11-27 09:38:15