脚本如下:

@echo off
setlocal enabledelayedexpansion

echo 正在生成文件校验信息,请稍候...
echo ------------------------------
(
    for /f "delims=" %%f in ('dir /b /a-d *') do (
        set "file=%%f"
        set "md5="
        
        for /f "skip=1 tokens=*" %%a in ('CertUtil -hashfile "%%f" MD5 2^>nul') do (
            if not defined md5 set "md5=%%a"
        )
        
        echo [!file!] [!md5!]
    )
) > MD5_Result.txt

echo ------------------------------
echo 校验完成!结果已保存到 MD5_Result.txt
endlocal

使用方法:

  1. 将上述代码保存为GetMD5.bat
  2. 双击运行或放入需要统计的目录执行
  3. 结果将保存在同目录的MD5_Result.txt文件中

脚本说明:

  1. 使用dir /b /a-d列出当前目录所有文件(不含子目录)
  2. 通过CertUtil系统工具计算MD5哈希值
  3. 自动跳过目录,仅处理普通文件
  4. 支持包含空格和特殊字符的文件名
  5. 结果文件格式为:[文件名] [32位MD5哈希值]

输出示例:

[example.jpg] [c4ca4238a0b923820dcc509a6f75849b]
[document.pdf] [d41d8cd98f00b204e9800998ecf8427e]
[data file.txt] [098f6bcd4621d373cade4e832627b4f6]

注意事项:

  1. 需要Windows XP及以上系统支持
  2. 首次运行时可能会提示"正在创建默认证书存储",属正常现象
  3. 大文件计算需要较长时间,请耐心等待命令行窗口自动关闭
  4. 若需要包含子目录,可将dir /b /a-d *改为dir /b /s /a-d *
Logo

DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。

更多推荐