标题: 【已解决】【50元红包】指定目录,查找最底层子文件夹,返回两层文件夹删除该文件夹 [打印本页]
作者: linfeng_321 时间: 2022-6-24 10:32 标题: 【已解决】【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:43
本帖最后由 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');}
- }
复制代码
作者: linfeng_321 时间: 2022-6-24 12:33
回复 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\
作者: linfeng_321 时间: 2022-6-24 12:42
回复 3# linfeng_321
好像 没有问题
作者: linfeng_321 时间: 2022-6-24 12:43
回复 2# zaqmlp
支付宝已支付
欢迎光临 批处理之家 (http://www.bathome.net/) |
Powered by Discuz! 7.2 |