Batch file 如何通过.bat文件在文件夹中创建文件夹
我必须使用.bat文件备份包含3个文件夹的文件夹。结构为MainFolder\First Folder、MainFolder\Second Folder、MainFolder\Third Folder。我希望备份为MainFolder\30-04-2015\FirstFolder,MainFolder\30-04-2015\SecondFolder,MainFolder\30-04-2015\ThirdFolder 我的.bat文件包含-Batch file 如何通过.bat文件在文件夹中创建文件夹,batch-file,Batch File,我必须使用.bat文件备份包含3个文件夹的文件夹。结构为MainFolder\First Folder、MainFolder\Second Folder、MainFolder\Third Folder。我希望备份为MainFolder\30-04-2015\FirstFolder,MainFolder\30-04-2015\SecondFolder,MainFolder\30-04-2015\ThirdFolder 我的.bat文件包含- @echo off FOR /F "TOKENS=1*
@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%
mkdir "Z:\MainFolder\%1%date%"
xcopy "C:\MainFolder\FirstFolder" "Z:\MainFolder\%date%\FirstFolder" /s/i
xcopy "C:\MainFolder\SecondFolder" "Z:\MainFolder\%date%\SecondFolder" /s/i
xcopy "C:\MainFolder\ThirdFolder" "Z:\MainFolder\%date%\ThirdFolder" /s/i
只创建日期文件夹,不在其中复制任何文件
请给出解决方案 你会讨厌看到你的问题有多么困难 您正在通过
[设置日期=%dd%-%mm%-%yyyyy%]
设置日期。SET命令中包含尾随空格,因此稍后xcopy目标将变为“Z:\MainFolder\05-01-2015\FirstFolder”
——当然不存在且无效
您还可以简化日期设置,如下所示:
FOR/F“TOKENS=2,3,4 DELIMS=-”%%A IN('DATE/T')DO SET dt=%%A-%%B-%%C
请注意,我使用了dt而不是覆盖内置的date环境变量。您可能需要切换%%A和%%B-因为我认为您在代码中日复一日地切换。我通常会以yyyy-mm-dd格式命名这样一个目录,以便正确排序。这一行中的
%1
是否为键入mkdir“Z:\MainFolder\%1%date%”
?