web-dev-qa-db-ja.com

Linuxのcksumコマンドに相当するWindows

Crcチェックサムクロスプラットフォームを計算する方法を探しています。

cksumはLinux、AIX、HP-UX Itanium、Solarisで動作します。Windowsでもcksumと同等のコマンドがありますか?

%cksum run.sh
1491301976 652 run.sh

:サードパーティツールなし

45
abi1964

Windows(コマンドプロンプト)では、CertUtilを使用できます。構文は次のとおりです。

CertUtil [Options] -hashfile InFile [HashAlgorithm]

cmdの構文説明タイプの場合:

CertUtil -hashfile -?

例:

CertUtil -hashfile C:\myFile.txt MD5

デフォルトは、MD2、MD4、MD5、SHA1、SHA256、SHA384、SHA512をサポートするSHA1です。残念ながら、UnixシェルのようなCRC32はありません。

さらに詳しく知りたい場合はこちらのリンクをご覧ください https://technet.Microsoft.com/en-us/library/cc732443.aspx#BKMK_men

104
Cassian

MSからのチェックサム用のサポートされていないツールがあるように見えます。機能には軽微ですが、あなたが求めていることをしているように見えます。 2012年8月に公開されました。「Microsoft File Checksum Integrity Verifier」と呼ばれています。

http://www.Microsoft.com/en-us/download/details.aspx?id=115

9
RyanB

迷惑な非チェックサム行を回避するには:CertUtil -v -hashfile "your_file" SHA1 | FIND/V "CertUtil"これは行のみを表示します[〜#〜] not [〜#〜] continging CertUtil

2
HIlitec

@Cassianと@Hllitecの回答と https://stackoverflow.com/a/42706309/1001717 の回答を組み合わせて、ここで私のソリューション、チェックサム値を変数に(だけ!)さらなる処理:

for /f "delims=" %i in ('certutil -v -hashfile myPackage.nupkg SHA256 ^| find /i /v "sha256" ^| find /i /v "certutil"') do set myVar=%i

出力をテストするには、varを使用してパイプエコーコマンドを追加します。

for /f "delims=" %i in ('certutil -v -hashfile myPackage.nupkg SHA256 ^| find /i /v "sha256" ^| find /i /v "certutil"') do set myVar=%i | echo %myVar%

少し話題から外れていますが、参考までに、NuGetパッケージをArtifactoryにアップロードする前にこれを使用しました。ところで。代わりに、チェックサムが自動的に計算されるJFrog CLIを使用できます。

0
Chris

Windows用の* nix cksumコマンドラインユーティリティのC#実装を次に示します https://cksum.codeplex.com/

0
sst

2019年に、MicrosoftはWindows 10用に次のソリューションを提供します。このソリューションはSHA256チェックサムで機能します。

https://docs.Microsoft.com/en-us/powershell/module/Microsoft.powershell.utility/get-filehash?view=powershell-6

Windowsキーを押します。 PowerShellと入力します。 Windows Powershellを選択します。 Enterキーを押します。コマンドを貼り付ける

Get-FileHash C:\ Users\Donald\Downloads\File-to-be-be-checked-by-sha256.exe |フォーマットリスト

File-to-be-checked-by-sha256.exeを、チェックするファイルの名前に置き換えます。

ファイルがあるパスにパスを置き換えます。 Enterキーを押します。 Powershellは次を示します

アルゴリズム:SHA256ハッシュ:123456789ABCDEFGH1234567890 ...パス:C:\ Users\Donald\Downloads\File-to-be-checked-by-sha256.exe

0
stacki