返回列表 发帖

【已解决】【50元红包】指定目录,查找最底层子文件夹,返回两层文件夹删除该文件夹

本帖最后由 linfeng_321 于 2022-6-24 12:43 编辑

指定目录,查找最底层子文件夹,返回两层文件夹删除该文件夹(包含该文件夹里所有文件和文件夹)
--------------------------------------

可以设置多个目录:
.\111\222
.\111\333

可以设置返回几层文件夹数字
2

该目录下多层子文件夹:
aaa\bbb\ccc\ddd\eee\(结果为:aaa\bbb\ccc\)
bbb\ccc\ddd\eee\fff\ggg\hhh\(结果为:bbb\ccc\ddd\eee\fff\)
444\555\6666\777777\88\9999\123222\567890\(结果为:444\555\6666\777777\88\9999\)

更多子文件夹...

本帖最后由 zaqmlp 于 2022-6-24 11:45 编辑
<# :
cls&echo off&cd /d "%~dp0"&mode con lines=5000
powershell -NoProfile -ExecutionPolicy bypass "Get-Content -literal '%~f0'|Out-String|Invoke-Expression"
pause
exit
#>
$level=2;
$folders=@(
".\111\222",
".\111\333"
);
$reg='(\\[^\\]+){'+$level.ToString()+'}$';
for($i=0;$i -lt $folders.length;$i++){
    if(test-path -literal $folders[$i]){
        $folders1=@(dir -literal $folders[$i] -recurse|?{$_ -is [System.IO.DirectoryInfo]});
        for($j=0;$j -lt $folders1.length;$j++){
            $folders2=@(dir -literal $folders1[$j].FullName|?{$_ -is [System.IO.DirectoryInfo]});
            if($folders2.length -eq 0){
                $fd=$folders1[$j].FullName -replace $reg,'';
                if($fd -ne $folders1[$j].FullName){
                    if(test-path -literal $fd){
                        write-host $folders1[$j].FullName -NoNewline;
                        write-host ' --> ' -NoNewline;
                        write-host $fd -ForegroundColor yellow;
                        remove-item -literal $fd -recurse -force -ErrorAction SilentlyContinue;
                    }
                }
            }
        }
    }else{write-host ('"'+$folders[$i]+'" not found');}
}COPY
提供bat代写,为你省时省力省事,支付宝扫码头像支付
微信: unique2random

TOP

回复 2# zaqmlp


    会把目录删除,请大佬修改下,我再试试

.\111\222\aaa\bbb\ccc\ddd\eee\(结果为:.\111\222\\aaa\bbb\ccc\)
.\111\222\bbb\ccc\ddd\eee\fff\ggg\hhh\(结果为:.\111\222\bbb\ccc\ddd\eee\fff\)
.\111\222\444\555\6666\777777\88\9999\123222\567890\(结果为:.\111\222\444\555\6666\777777\88\9999\)

上面的路径使用下面目录代替
.\111\222\

TOP

回复 3# linfeng_321


   好像 没有问题

TOP

回复 2# zaqmlp


    支付宝已支付

TOP

返回列表