编写夜间运行的Bat脚本:批量进入未知目录并创建子目录
实现Bat脚本自动遍历前缀目录并创建子目录
没问题,我来帮你完善这个夜间运行的Bat脚本!根据你的需求,我们可以通过for循环结合dir /b /ad命令来自动遍历所有你创建的前缀目录,然后在每个目录里批量创建5个子目录。
核心思路
- 用
dir /b /ad列出当前目录下所有子目录(只列目录,排除文件) - 通过
for循环逐个遍历这些目录 - 进入每个目录后创建指定的5个子目录,完成后退回上一级继续处理下一个
完整脚本示例
@echo off setlocal enabledelayedexpansion :: 遍历当前目录下所有子目录 for /f "delims=" %%d in ('dir /b /ad') do ( :: 可选:筛选出不含下划线的前缀目录(避免误处理原始带下划线的目录) echo "%%d" | findstr /v "_" >nul if !errorlevel! equ 0 ( echo 正在处理目录: %%d :: 进入目标目录 cd "%%d" :: 创建5个子目录,这里可以替换成你实际需要的名称 mkdir Input Output Log Temp Backup :: 退回上一级目录 cd .. ) ) echo 所有目录处理完成! endlocal
代码说明
@echo off:关闭命令回显,让脚本运行时输出更整洁setlocal enabledelayedexpansion:启用延迟变量扩展,确保循环内的判断逻辑正常工作dir /b /ad:/b只输出纯目录名,/ad仅列出目录(排除文件)findstr /v "_":筛选出名称中不含下划线的目录(匹配你创建的前缀目录,避免处理原始的带下划线目录)mkdir Input Output Log Temp Backup:一次性创建5个自定义名称的子目录,你可以根据实际需求修改这些名称cd ..:处理完当前目录后回到上级,继续遍历下一个目录
如果你的前缀目录命名规则有其他特征(比如固定长度),也可以调整筛选条件,比如用findstr "^[A-Z0-9]*$"来匹配纯字母数字的目录名。
内容的提问来源于stack exchange,提问作者B_Saas
相关产品推荐
相关产品推荐

