如何将 ISO 格式的日期放入环境变量中,而不管区域设置如何?此处相关问题的答案表明,这将需要一个特殊的 .exe,因此,如果能提供该 .exe 的来源,我们将不胜感激。
答案1
看这个帖子. 接受的答案建议一种获取 ISO 格式日期的方法:
如果您想要独立于区域日/月顺序的日期,则可以使用“WMIC os GET LocalDateTime”作为源,因为它符合 ISO 顺序:
@echo off for /F "usebackq tokens=1,2 delims==" %%i in (`wmic os get LocalDateTime /VALUE 2^>NUL`) do if '.%%i.'=='.LocalDateTime.' set ldt=%%j set ldt=%ldt:~0,4%-%ldt:~4,2%-%ldt:~6,2% %ldt:~8,2%:%ldt:~10,2%:%ldt:~12,6% echo Local date is [%ldt%]
测试.cmd
当地日期为 [2012-06-19 10:23:47.048]
答案2
另一种比上面的例子返回速度更快的方法是,因为它不需要 wmic - 它只使用 CMD 变量操作:
set month=%date:~3,2%
set day=%date:~0,2%
set year=%date:~6,4%
echo %year%-%month%-%day%
希望这可以帮助