echo Today is %date%
echo Time is %time%
echo.
echo *****************************
echo Please wait...
echo.
set "Ymd=%date:~,4%%date:~5,2%%date:~8,2%%time:~0,2%%time:~3,2%"当时间为9:50的时候(当时间为10:00的时候就不会错)
Ymd的时间取值就会错误。

解决方案 »

  1.   

    我测试没错
    D:\>echo %ymd%
    20110418 950
      

  2.   

    测试是没错呀,我的是生成SQL文件的时候,产生不正确的SQL文件。
      

  3.   

    怎么才能让这个时间为09
    echo Time is %time%
      

  4.   

     只取小时:
    echo Time is %time:~0,2%
      

  5.   

    set "Ymd=%date:~,4%%date:~5,2%%date:~8,2%%time:~0,2%%time:~3,2%"
    -uroot -p**** --add-drop-database -B -R c1 > c:\c1_%Ymd%.sql
    当时间为1-9点的时候,会生成不正确的SQL文件。
      

  6.   

    Windows   Registry   Editor   Version   5.00  [HKEY_CURRENT_USER\Control   Panel\International] 
     "sDate "= "- " 
     "sShortDate "= "yyyy-mm-dd " 
     "sTime "= "- " 
     "sTimeFormat "= "HH-mm-ss "  上述内容另存为timeformat.reg 
     批处理:regedit   -s   timeformat.reg设置一下时间格式
      

  7.   

    if "%Time:~0,1%"==" " set hh=0%Time:~1,1%
    set "Ymd=%date:~,4%%date:~5,2%%date:~8,2%%hh%%time:~3,2%"
    改成这样就可以了