Batch file .bat文件%date%在windows server 2008中输出错误

Batch file .bat文件%date%在windows server 2008中输出错误,batch-file,windows-server-2008,Batch File,Windows Server 2008,我正在使用%date:~10%%date:~7,2%%date:~4,2%%time:~0,2%%time:~3,2%作为日期 输出应该是:2017061102 但输出:016.1102 怎么了?我建议您使用WMIC命令的输出,如下所示: @echo关闭 使用WMIC获取标题日期和时间 对于/f“tokens=2 delims==”('wmic OS Get localdatetime/value')中的%%a,请设置“dt=%%a” 设置“YYYY=%dt:~0,4% 设置“MM=%dt:~4

我正在使用
%date:~10%%date:~7,2%%date:~4,2%%time:~0,2%%time:~3,2%
作为日期

输出应该是:2017061102

但输出:016.1102


怎么了?

我建议您使用
WMIC
命令的输出,如下所示:

@echo关闭
使用WMIC获取标题日期和时间
对于/f“tokens=2 delims==”('wmic OS Get localdatetime/value')中的%%a,请设置“dt=%%a”
设置“YYYY=%dt:~0,4%
设置“MM=%dt:~4,2%
设置“DD=%dt:~6,2%
设置“HH=%dt:~8,2%
设置“最小=%dt:~10,2%
设置“秒=%dt:~12,2%
回声YYYYMMDDHHMinSec
设置“DateTimeVar=%YYYY%%MM%%DD%%HH%%Min%%Sec%”
回显%DateTimeVar%
暂停

日期格式取决于本地化设置。要使日期独立于控制面板中的设置,请选中此项-您的服务器的日期配置与您预期的不同。
ECHO“%DATE%”
@Compo 16.06.2017的值是多少基于该输出,您可以使用
%DATE:~-4%%DATE:~-7,2%%DATE:~-10,2%%TIME:~0,2%%TIME:~3,2%