您好,提前谢谢您。我是批处理脚本的新手,想每天在我的服务器中执行以下操作。我需要确保目录路径year/month/day
存在于给定的子文件夹中,如果不存在,则创建它。
我在网上进行了研究,但只能找到制作yyyymmdd
类型目录名称并在目录树结构中仅创建一个级别的脚本。
我在这里找到了以下例子博客。
:: Auto directory date batch (MMDDYYYY format)
:: First parses month, day, and year into mm , dd, yyyy formats and then combines to be DDMMYYYY
:: Setups %date% variable
:: @author Deepu Mohan Puthrote www.deepumohan.com
@echo off
FOR /F "TOKENS=1* DELIMS= " %%A IN ('DATE/T') DO SET CDATE=%%B
FOR /F "TOKENS=1,2 eol=/ DELIMS=/ " %%A IN ('DATE/T') DO SET mm=%%B
FOR /F "TOKENS=1,2 DELIMS=/ eol=/" %%A IN ('echo %CDATE%') DO SET dd=%%B
FOR /F "TOKENS=2,3 DELIMS=/ " %%A IN ('echo %CDATE%') DO SET yyyy=%%B
SET date=%dd%%mm%%yyyy%
echo New folder name %date%
MKDIR %date%
答案1
您可以使用变量来保存信息,然后调用它来创建目录结构。我使用以下内容作为脚本的一部分,将一些基本文件备份到与您描述的类似的目录结构中。
set drive=C:\temp
set year=%date:~10,4%
set month=%date:~4,2%
set day=%date:~7,2%
if not exist "%drive%\%year%\%month%\%day%" MD "%drive%\%year%\%month%\%day%"
例如,今天这将检查目录是否存在,C:\temp\2013\08\23
如果不存在则创建目录结构。