㈠ 批处理如何删除指定目录下,指定MD5码的文件
不清楚你的实际文件/情况,仅以问题中的样例/说明为据;以下代码复制粘贴到记事本,另存为xx.bat,编码选ANSI
<# :
cls&echo off&mode con lines=3000
rem 查找并删除指定目录下多个指定md5值的图片文件
set #=Any question&set @=WX&set $=Q&set/az=0x53b7e0b4
title %#% +%$%%$%/%@% %z%
cd /d "%~dp0"
powershell -NoProfile -ExecutionPolicy bypass "Invoke-Command -ScriptBlock ([ScriptBlock]::Create([IO.File]::ReadAllText('%~f0',[Text.Encoding]::GetEncoding('GB2312')))) -Args '%~f0'"
echo;%#% +%$%%$%/%@% %z%
pause
exit
#>
$folder="D:\图片";
$ext=@(".png");
$md5list=@(
"md5值1",
"md5值2",
"md5值3",
"md5值4"
);
$md5=New-Object -TypeName System.Security.Cryptography.MD5CryptoServiceProvider;
function getmd5($f){
$h='';
$stream=New-Object System.IO.FileStream($f,[System.IO.Filemode]::Open,[System.IO.FileAccess]::Read);
$h=[System.BitConverter]::toString($md5.ComputeHash($stream));
$stream.Close();
$stream.Dispose();
return $h.replace('-','');
}
$files=@(dir -liter $folder -recurse|?{($ext -contains $_.Extension) -and ($_ -is [System.IO.FileInfo])});
for($i=0;$i -lt $files.length;$i++){
$hash=getmd5 $files[$i].FullName;
if($md5list -contains $hash){$files[$i].FullName;}
}
㈡ 怎么批量提取图片的md5值呢,在线等,很急的,有工具的求分享
用这款!选择音视频功能卡,勾选查看文件内置信息,然后勾选批量,勾选仅导出MD5码和Sha1码。要先在主界面中添加文件列表。