コマンドプロンプトで SH1 や MD5 のハッシュ値を求める

この前の CERTUTIL を使うと ファイルのハッシュ値も求めることができます。

C:\> CERTUTIL -hashfile test.txt SHA1
SHA1 ハッシュ (ファイル decoded.txt):
05 f6 94 17 04 da 46 18 40 dd da a0 a8 87 0c 9a 21 cb 6e 17
CertUtil: -hashfile コマンドは正常に完了しました。

C:\> CERTUTIL -hashfile test.txt MD5
MD5 ハッシュ (ファイル decoded.txt):
77 c1 6d 26 74 1b 41 91 c9 25 8b 59 61 a0 c4 d3
CertUtil: -hashfile コマンドは正常に完了しました。

不要な行を FIND コマンドで取り除きます。

C:\> CERTUTIL -hashfile test.txt SHA1 | FIND /V ":"
05 f6 94 17 04 da 46 18 40 dd da a0 a8 87 0c 9a 21 cb 6e 17

間の空白も取り除きます。 FOR コマンドだと簡単です。

C:\> @FOR /F "delims=/" %i IN ('CERTUTIL -hashfile test.txt SHA1 ^| FIND /V ":"') DO @((SET ITEM=%i) && (ECHO %ITEM: =%))
05f6941704da461840dddaa0a8870c9a21cb6e17

何かに使えそうですね。

Google サイト内検索

Amazonアソシエイト