windows cmd命令 mkdir生成多个文件bug问题


[问题现象]

有这样一个bat脚本,目的是为了根据时间创建文件夹

 

执行后却发现生产的文件夹有两个,名字被分开了,很是纳闷,一度以为自己哪里写错了

 

 

[问题原因]

经过查阅资料,一点一点的定位。发现是因为win10系统的原因。hh=%time:~0,2% 因为时间是早上9点,所以生成的字符是"  9",这样在cmd里面创建文件夹的时候就会被断开生成两个文件

[解决方法]

需要做一个判定修改,加上

if /i %hh% LSS 10 (set hh=0%time:~1,1%)

更改为

@echo off

set mm=%date:~5,2%
set dd=%date:~8,2%
set hh=%time:~0,2%
if /i %hh% LSS 10 (set hh=0%time:~1,1%)
set mn=%time:~3,2%
set ss=%time:~6,2%

set dirname=xxxxnews_%mm%_%dd%_%hh%_%mn%_%ss%

mkdir %dirname%

pause

就可以了


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM