Windows平台上类似Linux的校验和命令(Windows equivalent of linu

2019-06-27 20:32发布

我正在寻找一种方式来计算CRC校验和跨平台。

cksum在Linux,AIX,HP-UX Itanium上,Solaris和有linux下的等效命令cksum在窗口呢?

%cksum run.sh
1491301976 652 run.sh

:没有第三方工具

Answer 1:

在Windows(命令提示符),您可以使用CERTUTIL,这里是语法:

CertUtil [Options] -hashfile InFile [HashAlgorithm]

在CMD语法解释类型:

CertUtil -hashfile -?

例:

CertUtil -hashfile C:\myFile.txt MD5

默认值是SHA1支持:MD2,MD4,MD5,SHA1,SHA256,SHA384,SHA512。 不幸的是没有CRC32作为Unix外壳一样。

这里是一个链接,如果您想了解更多https://technet.microsoft.com/en-us/library/cc732443.aspx#BKMK_menu



Answer 2:

这看起来好像有从MS校验和不支持的工具。 这是对光线的功能,但似乎你在问什么。 它发表在2012年八月的这就是所谓的“Microsoft文件校验和完整性验证”。

http://www.microsoft.com/en-us/download/details.aspx?id=11533



Answer 3:

为了避免恼人的非校验线:CERTUTIL -v -hashfile“your_file” SHA1 | FIND / V “CERTUTIL”这将只显示线(S)NOT contaning CERTUTIL



Answer 4:

这里是一个用于Windows的C#实现* nix的校验和命令行实用程序的https://cksum.codeplex.com/



Answer 5:

在@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添加管道echo命令的输出:

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%

有点偏离主题,但FYI:我上传我的NuGet包artifactory的使用此之前。 BTW。 作为替代,你可以使用JFrog CLI,其中校验和自动计算。



文章来源: Windows equivalent of linux cksum command