「sha256sum」を使用したSHA256チェックサムの確認がDebianでは失敗し、Ubuntuで動作するのはなぜですか?

「sha256sum」を使用したSHA256チェックサムの確認がDebianでは失敗し、Ubuntuで動作するのはなぜですか?

Ubuntu 14.04では、sha256sum効果はcoreutils予想通りです。

echo 879dd0d7637876be4796f7e6f194a111d21088be85cfe717fc97e2e7f05e79d2 /tmp/myfile | sha256sum -c
/tmp/myfile: OK

しかし、Debian Wheezyで同じファイルを使って同じコマンドを実行すると失敗します。

sha256sum: standard input: no properly formatted SHA256 checksum lines found

わかりません。 Debianのシェルスクリプトでチェックサムを確実にチェックする方法は?


Ubuntu 14.04:

⟫ sha256sum --version
sha256sum (GNU coreutils) 8.21

千音音について:

$ sha256sum --version
sha256sum (GNU coreutils) 8.13

両方のオペレーティングシステムのマンページには以下が表示されます。

SYNOPSIS
       sha256sum [OPTION]... [FILE]...

DESCRIPTION
       Print or check SHA256 (256-bit) checksums.  With no FILE,
       or when FILE is -, read standard input.

[...]

       -c, --check
              read SHA256 sums from the FILEs and check them

ベストアンサー1

間隔に神経を書きます。実行する場合:

sha256sum /dev/null

あなたは得る

e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855  /dev/null

(二つのカーン)。このように使用すると、echo単語の間に空白だけがあります。

8.13バージョンが欲しい精密出力形式です。以下を使用する場合:

echo "$SUM  $FILE" | sha256sum -c

(再び2つのスペース)正しく動作します。最新バージョンはスペースの数を気にしないので、そのバージョンでも機能します。

おすすめ記事