<# :
cls&echo off&mode con lines=5000
rem 将当前目录下第二级子文件夹里的文件剪切/移动到第一级子文件夹里/上一级子文件夹里
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
#>
[byte[]]$b=@(32,45,45,62,32)
$c=[Text.Encoding]::Default.GetString($b)
$self=get-item -liter $args[0]
$path=$self.Directory.FullName
$folders1=@(dir -liter $path|?{$_ -is [System.IO.DirectoryInfo]})
for($i=0$i -lt $folders1.length$i++){
$folders2=@(dir -liter $folders1[$i].FullName|?{$_ -is [System.IO.DirectoryInfo]})
for($j=0$j -lt $folders2.length$j++){
$files=@(dir -liter $folders2[$j].FullName)
for($k=0$k -lt $files.length$k++){
$files[$k].FullName.substring($path.length)+$c+$folders1[$i].FullName.substring($path.length)+'\'+$files[$k].Name
}
#remove-Item -liter $folders2[$j].FullName -ErrorAction SilentlyContinue
}
}
可以不用BAT的形式,点点鼠标就完成
参考图主要分5个步骤:
第一、加载文件库,如果有子文件夹,选择多级文件夹
第二、文件清单填在左边框内一行一个,有空行清除掉
第三、设置保存路径,就是处理完后我们文件放哪里
第四、文件 *** 作方式,移动分2种是要复制还是剪切
第五、选择匹配方式,文件名包含文件清单呢,还是等于,还是连格式都完全相同
最后点击确定按钮查找,就可以找出来,最上面可以导出表格来哪些是匹配好的日志信息
@echo offset "DstFolder=C:\新文件夹"
if not exist "%DstFolder%\" (
md "%DstFolder%"
)
for /f "delims=" %%i in ('dir /b /s /a-d *.MP4 *.MKV *.RMVB *.AVI') do (
move /y "%%i" "%DstFolder%"
)
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)