使用批处理文件创建文件夹名称

时间:2016-08-10 16:46:31

标签: datetime batch-file time directory

我正在尝试使用批处理文件创建一个文件夹。文件夹名称应该是格式 - yyyymmdd-hhmm。我从下面的代码开始,但我得到yyyymmdd-作为一个文件夹,hhmm作为另一个文件夹。但是当我在13:00之后尝试它时,我得到了yyyymmdd-hhmm格式。为什么在早上9:45有不同的行为。我不知道。任何帮助表示赞赏。

For /f "tokens=2-4 delims=/ " %%a in ('date /t') do (set mydate=%%c%%a%%b)
For /f "tokens=1-2 delims=/:" %%a in ("%TIME%") do (set mytime=%%a%%b)
mkdir %mydate%-%mytime%

我得到1个文件夹 - > 20160810-和另一个文件夹 - > 945。

1 个答案:

答案 0 :(得分:3)

“我得到1个文件夹 - > 20160810-和另一个文件夹 - > 945。”

这是因为空间,所以mkdir看到两个参数,因此创建了两个文件夹。

将qoutes放在新的foldername

周围
mkdir "%mydate%-%mytime%"` 

或(可能更好)用零替换空格:

mkdir %mydate%-%mytime: =0%
无论如何,把qoutes放在身边都没有害处:

mkdir "%mydate%-%mytime: =0%"

(顺便说一句:有办法get a date-time-string independent of local settings