大家好
今天我要把WAS的日志进行备份
写批处理文件的时候遇到了一个问题
其他板块都没人啊只能求教各位了问题如下
--------
我的预期目标是现在时间为2011年2月17日 09:47:44
生成的时间戳为:20110217094744现在执行  
>echo %date:~0,4%%date:~5,2%%date:~8,2%%time%%time:~0,2%%time:~3,2%%time:~6,2%
输出结果为
20110217 94744如何把小时前面不足两位数的自动补零呢?生成20110217094744谢谢各位!~

解决方案 »

  1.   

    Windows 自带的批处理功能很弱,实现是能实现但是非常麻烦!建议你去下载 UnxUtils 工具(http://unxutils.sourceforge.net/)解压后,把其中有个 sbin 目录加到 path 中去,把其中的 date.exe 改为 udate.exe。之后使用 udate "+%Y%m%d%H%M%S" 就可以了。UnxUtils 工具是很多 Unix/Linux 命令 Windows 的移植。
      

  2.   

    上面说错目录名了,解压后把子目录 usr\local\wbin 添加到 path 中,呵呵。
      

  3.   

    在批处理中这样用:[code=BatchFile]@echo off
    for /f %%a in ('udate +%%Y%%m%%d%%H%%M%%S') do set timestamp=%%a
    echo %timestamp%
    echo test name > %timestamp%.txt
    echo on[/code]