批处理编写,将代码复制,另存为bat,同时注意编码为ANSI。
批处理实现的功能是,将某个目录下各级子目录的多个文件类型,汇聚到指定的其他目录。
例如,D:\TEST目录下有
D:\TEST\temp1\1.mp4
D:\TEST\temp2\2.mp4
D:\TEST\temp3\3.mp4
使用本批处理可以一次性将所有mp4文件移动到指定的文件夹。
@echo off
echo 本批处理将汇总目录下(包含子目录)内的全部指定类型文件到指定目录
echo,
set str=%~dp0
set /p "str= 请输入要操作的目录路径(直接回车,则默认处理批处理所在文件夹)"
cd /d "%str%"
echo,
set /p "FileType= 输入文件名或文件类型,可以输入多个类型,使用空格隔开(例如:*星球*.mp4 或 *.mp4):"
echo,
set /p "DstFolder= 移动到哪个文件夹(例如D:\test):"
if not exist "%DstFolder%" (
echo 不存在文件夹"%DstFolder%",正在创建文件夹"%DstFolder%"
md "%DstFolder%"
echo,& echo 创建完毕
)
echo,& echo 正在移动文件。。。。。。
setlocal enabledelayedexpansion
set num=0
for /f "delims=" %%i in ('dir /a-d /s /b %FileType%') do (
set /a num+=1
echo 正在移动第 !num! 个文件----- %%i
move "%%i" "%DstFolder%">nul 2>nul
)
echo,
echo 移动完成。。。。。。。。。
echo,
echo 一共移动 !num! 个文件
setlocal disabledelayedexpansion
echo,&pause
版权说明
文章采用: 《署名-非商业性使用-相同方式共享 4.0 国际 (CC BY-NC-SA 4.0)》许可协议授权。版权声明:本站资源来自互联网收集,仅供用于学习和交流,请勿用于商业用途。如有侵权、不妥之处,请联系客服并出示版权证明以便删除!
发表评论