【问题标题】:Windows 7 batch file date IssueWindows 7 批处理文件日期问题
【发布时间】:2011-02-10 10:47:55
【问题描述】:

我在 Windows XP 中工作,现在迁移到 Windows 7。使用批处理文件构建。现在不行了。

Windows XP:

echo %DATE:~4,2%-%DATE:~7,2%-%DATE:~10,4%

02-10-2011

Windows-7:

echo %DATE:~4,2%-%DATE:~7,2%-%DATE:~10,4%

2--01-

请帮忙。谢谢。

【问题讨论】:

  • 用 %date:~6,4%-%date:~3,2%-%date:~0,2% 替换 %date%

标签: date windows-7 batch-file


【解决方案1】:

它对我有用。但是当我尝试这个时:

SET DATF=2011-10-02
ECHO %DATF:~4,2%-%DATF:~7,2%-%DATF:~10,4%

它显示了:

-1--0-

所以我的猜测是在您的 Windows 7 环境中%DATE% 必须以不同于以前在 WinXP 中的格式返回日期。您可能想要更改脚本或更改日期/时间的区域设置。

【讨论】:

    【解决方案2】:

    我敢打赌 %DATE% 的输出/格式已经改变 - 它受语言环境/区域设置的影响。

    只需发送echo %DATE% 即可查看格式是否已从 WinXP 更改为 Win7。

    【讨论】:

    • 它是:echo %DATE% ---> 10-02-2011。谢谢:)
    • 回显 %DATE:~3,2%-%DATE:~0,2%-%DATE:~6,4% 02-10-2011
    【解决方案3】:

    这取决于您的时间设置,时间格式可能不同。 试试这两条线:

    回显 %DATE%

    最常用的是 DD/MM/YYYY 或 MM/DD/YYYY。

    如果不同,请根据需要解析您的字符串。

    【讨论】:

      【解决方案4】:

      我刚刚想通了。问题是Win7是从0开始计算字符串而不是XP中的1,所以解决方法是:

      经验

      echo %DATE:~4,2%-%DATE:~7,2%-%DATE:~10,4%
      

      WIN7

      echo %DATE:~3,2%-%DATE:~6,2%-%DATE:~9,4%
      

      试试看,这对我有用。

      【讨论】:

        猜你喜欢
        • 2010-10-03
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-06-15
        • 2011-07-01
        • 1970-01-01
        相关资源
        最近更新 更多