Цитата DjBoBo:
фаил использует какую-то экзотическую кодировку UCS-2 Little Endian »
|
Это наиобычнейший юникод
![Wink](images/smilies/wink.gif)
. Вы ранее ничего не упоминали про кодировку, посему я выбирал сам.
Цитата DjBoBo:
И второй момент заключается в том что между контрольной суммой и именем файла стоит символ не пробела (а Tab?). »
|
И по этому поводу ранее ничего не было сказано.
Вообще у Вас там были звёздочки
.
Цитата DjBoBo:
Надеюсь что это можно исправить в самом скрипте :-) »
|
Пробуйте:
читать дальше »
Код:
![Выделить весь код](images/misc/selectcode.png)
function GetMD5Hash([System.String]$sFile) {
$oHashAlgorithm = [Security.Cryptography.HashAlgorithm]::Create("MD5")
$oStreamReader = ([System.IO.StreamReader]$sFile).BaseStream
-join ($oHashAlgorithm.ComputeHash($oStreamReader) | ForEach-Object -Process { "{0:x2}" -f $_ })
$oStreamReader.Close()
}
$sRootPath = "E:\Песочница\0328"
$sMD5ListPath = "E:\Песочница\0336\MD5 List.txt"
"; Generated on $(Get-Date)" | Out-File -FilePath $sMD5ListPath -Encoding UTF8
Get-ChildItem -Path $sRootPath -Recurse |`
Where-Object -FilterScript { -not $_.PSIsContainer -and "Thumbs.db", "Descript.ion" -notcontains $_.Name } |`
ForEach-Object -Process {
"$(GetMD5Hash $_.FullName) $($_.FullName.Substring($sRootPath.Length + 1))"
} | Out-File -FilePath $sMD5ListPath -Encoding UTF8 -Append