如何用bat命令清空文件夹?

如何用bat命令清空文件夹?,第1张

其实别的都好写的,\x0d\x0a“也就是说里面有些文件是被打开的了 那就跳过他不需要强制删除。”\x0d\x0a\x0d\x0a这个就实现不了,像文本之类打开着也是可以删除的。\x0d\x0a别的毫无难度。\x0d\x0a@echo off\x0d\x0a::删除cache目录下所有文件\x0d\x0adel /q /s d:\cache\*.*\x0d\x0a::通过DIR获取cache目录下的所有子文件夹。然后删除获取到的文件夹 ">nul"不现实错误信息。\x0d\x0afor /f "delims=" %%a in ('dir /ad/b/s d:\cache') do (rd /q /s "%%a")>nul\x0d\x0aecho end...\x0d\x0apause

不清楚你的实际文件/情况,仅以问题中的样例说明及猜测为据;以下代码复制粘贴到记事本,另存为xx.bat,编码选ANSI,跟要处理的文件或文件夹放一起双击运行

<# :

cls&echo off&cd /d "%~dp0"&mode con lines=5000

rem 将当前目录下所有文件和文件夹的名称末尾的一个指定字符及其后面的字符删除,但保留文件名称末尾的数字序号

set #=Any question&set _=WX&set $=Q&set/az=0x53b7e0b4

title %#% +%$%%$%/%_% %z%

set "self=%~f0"

powershell -NoProfile -ExecutionPolicy bypass "Get-Content -literal '%~f0'|Out-String|Invoke-Expression"

echo%#% +%$%%$%/%_% %z%

pause

exit

#>

$b=[Convert]::FromBase64String("IC0tPiA=")

$c=[Text.Encoding]::Default.GetString($b)

$self=get-item -literal $env:self$current=$self.Directory.FullName

$reg='_[^_]+?$'

$arr=@(dir -literal $current -recurse|?{$_.FullName -ne $self.FullName}|sort {$_.FullName.length} -Descending)

for($i=0$i -lt $arr.length$i++){

    if($arr[$i] -is [System.IO.DirectoryInfo]){

        $base=$arr[$i].Name -replace $reg,''

        if($base -ne $arr[$i].Name){

            $arr[$i].FullName.replace($current,'')+$c+$base

        }

    }

    if($arr[$i] -is [System.IO.FileInfo]){

        $num='-00'

        $m1=[regex]::match($arr[$i].BaseName, $reg)

        if($m1.Success){

            $base=$arr[$i].BaseName -replace $reg,''

            $m2=[regex]::match($m1.groups[0].value, '[(](\d+)[)]$')

            if($m2.Success){$num='-'+$m2.groups[1].value}

            $arr[$i].FullName.replace($current,'')+$c+$base+$num+$arr[$i].Extension

        }else{

            $base=[regex]::replace($arr[$i].BaseName, '\s*[(](\d+)[)]$',{

                param($z)

                '-'+$z.groups[1].value

            })

            if($base -ne $arr[$i].BaseName){

                $arr[$i].FullName.replace($current,'')+$c+$base+$arr[$i].Extension

            }else{

                if($base -notmatch '-\d+$'){

                    $arr[$i].FullName.replace($current,'')+$c+$base+$num+$arr[$i].Extension

                }

            }

        }

    }

}


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/11782735.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-18
下一篇 2023-05-18

发表评论

登录后才能评论

评论列表(0条)

保存