Windows计算md5值

要在Windows下计算目录及其子目录下所有文件的MD5值,你可以使用PowerShell脚本来实现。以下是一个示例脚本:

# 导入System.Security.Cryptography命名空间
Add-Type -TypeDefinition @"
    using System;
    using System.IO;
    using System.Security.Cryptography;
"@

# 计算文件的MD5哈希值
function Get-FileMD5($filePath) {
    $md5 = [MD5]::Create()
    $stream = [System.IO.File]::OpenRead($filePath)
    $hash = [BitConverter]::ToString($md5.ComputeHash($stream))
    $stream.Close()
    return $hash.Replace("-", "").ToLower()
}

# 递归计算目录下的所有文件的MD5值
function Get-DirectoryMD5($directoryPath) {
    $files = Get-ChildItem $directoryPath -File -Recurse
    $md5Hashes = @()

    foreach ($file in $files) {
        $md5Hash = Get-FileMD5 $file.FullName
        $md5Hashes += "$md5Hash  $($file.FullName)"
    }

    return $md5Hashes
}

# 要计算的目录路径
$directoryPath = "C:\Your\Directory\Path"

# 获取目录下所有文件的MD5值
$md5Hashes = Get-DirectoryMD5 $directoryPath

# 将MD5值保存到文件
$md5Hashes | Out-File -FilePath "C:\MD5Hashes.txt"

Write-Host "MD5哈希值已计算并保存到C:\MD5Hashes.txt"

发表评论

匿名网友