bat 批处理命令创建带日期和时间的文件夹
创建bat文件,文件名可自定义,如 mkdir_by_datetime.bat
文件内容如下:// mkdir_by_datetime.bat
:: 关闭终端回显
@echo off
set CURRENT_DATE_STRING=%date:~0,4%%date:~5,2%%date:~8,2%
echo CURRENT_DATE_STRING=%CURRENT_DATE_STRING%
set CURRENT_TIME_STRING=%time:~0,2%_%time:~3,2%_%time:~6,2%
echo CURRENT_TIME_STRING=%CURRENT_TIME_STRING%
set CURRENT_DATE_TIME_STRING=%CURRENT_DATE_STRING%_%CURRENT_TIME_STRING%
echo CURRENT_DATE_TIME_STRING=%CURRENT_DATE_TIME_STRING%
:: 创建文件夹
md %CURRENT_DATE_TIME_STRING%
pause
注意:以上脚本存在问题,在时间的小时数小于10时中间存在空格,
其执行过程打印如下,执行后,会在当前工作目录创建名为“20220714_” 和 “9_51_42”的两个文件夹
CURRENT_DATE_STRING=20220714
CURRENT_TIME_STRING= 9_51_42
CURRENT_DATE_TIME_STRING=20220714_ 9_51_42 ## 此处‘20220714_’ 和 ‘9_51_42’中间存在空格,实质上创建了‘20220714_’ 和 ‘9_51_42’两个文件夹
请按任意键继续. . .
针对上述问题进行了修正,修正后的脚本如下:// mkdir_by_datetime.bat
:: 关闭终端回显
@echo off
:: 以下所有 echo 开头的行均可删除,在此脚本中 echo 仅为显示用
set CURRENT_DATE_STRING=%date:~0,4%%date:~5,2%%date:~8,2%
echo CURRENT_DATE_STRING=%CURRENT_DATE_STRING%
set "TIME_STRING_FILL_ZREO=%time: =0%"
echo TIME_STRING_FILL_ZREO=%TIME_STRING_FILL_ZREO%
set CURRENT_TIME_STRING=%TIME_STRING_FILL_ZREO:~0,2%_%TIME_STRING_FILL_ZREO:~3,2%_%TIME_STRING_FILL_ZREO:~6,2%
echo CURRENT_TIME_STRING=%CURRENT_TIME_STRING%
set CURRENT_DATE_TIME_STRING=%CURRENT_DATE_STRING%_%CURRENT_TIME_STRING%
echo CURRENT_DATE_TIME_STRING=%CURRENT_DATE_TIME_STRING%
:: 创建文件夹
md %CURRENT_DATE_TIME_STRING%
pause
其执行过程打印如下,执行后,会在当前工作目录创建名为“20220714_09_57_49”的文件夹
CURRENT_DATE_STRING=20220714
TIME_STRING_FILL_ZREO=09:57:49.49
CURRENT_TIME_STRING=09_57_49
CURRENT_DATE_TIME_STRING=20220714_09_57_49
请按任意键继续. . .
注:也可将以上命令直接复制后粘贴在cmd窗口中,会自动在cmd的当前工作目录创建对应日期文件夹。