PowerShellでファイルのハッシュ値を確認する方法 †Windowsのコマンドプロンプトには、Linuxにはある md5sum, sha1sum, shasum コマンドがなく、ハッシュ値を調べるコマンドがありませんでした。 以下にGet-FileHashの使用例を記します。 参考資料 †Microsoft Developer Network Get-FileHash を使ってみる。 †Get-FileHashを使ってみます。 PostgreSQLのtarballをダウンロードしてハッシュ値を取得してみます。 上記のスクリーンショットを見ると、tarball(tar.gz)の他に.md5, .sha256があるのが確認できます。 Get-FileHash ファイル名 †ファイル名のみ指定したときの出力です。 PS E:\work> dir ディレクトリ: E:\work Mode LastWriteTime Length Name ---- ------------- ------ ---- -a---- 2016/11/27 13:55 25172850 postgresql-9.6.1.tar.gz PS E:\work> Get-FileHash .\postgresql-9.6.1.tar.gz Algorithm Hash Path --------- ---- ---- SHA256 B85275DA86E23981591865CE184EA5911F77506888215B334929B818EB6BFB61 E:\work\postgresql-9.6.1.tar.gz ちなみにLinuxなどのコマンドの場合は、英字は小文字になります。 $ sha256sum postgresql-9.6.1.tar.gz b85275da86e23981591865ce184ea5911f77506888215b334929b818eb6bfb61 *postgresql-9.6.1.tar.gz なので、比較するのであれば、小文字に変換するtoLoewr()を呼び出せばよいでしょう。 PS E:\work> (Get-FileHash .\postgresql-9.6.1.tar.gz).Hash.toLower() b85275da86e23981591865ce184ea5911f77506888215b334929b818eb6bfb61 アルゴリズムを指定する †使用できるアルゴリズムは、Get-FileHashのドキュメントを参照してください。 以下、SHA256, MD5を使用してみます。 Get-FileHash -Algorithm アルゴリズム ファイル名 以下、実行例です PS E:\work> Get-FileHash -Algorithm md5 .\postgresql-9.6.1.tar.gz Algorithm Hash Path --------- ---- ---- MD5 EAA7E267E89EA1ED2693D2B88D3CD290 E:\work\postgresql-9.6.1.tar.gz PS E:\work> Get-FileHash -Algorithm sha256 .\postgresql-9.6.1.tar.gz Algorithm Hash Path --------- ---- ---- SHA256 B85275DA86E23981591865CE184EA5911F77506888215B334929B818EB6BFB61 E:\work\postgresql-9.6.1.tar.gz 以上、PowerShellでファイルのハッシュ値を確認することができる Get-FileHash の使用例でした。 |