Batch脚本获取日期SET YEAR=%date:~10,4%

在batch脚本中我们可以通过下面的语句来对日期进行操作:

SET YEAR=%date:~10,4%
SET MONTH=%date:~4,2%
SET DAY=%date:~7,2%
SET HOUR=%time:~0,2%
IF "%HOUR:~0,1%"==" " SET HOUR=0%HOUR:~1,1%
SET MINUTE=%time:~3,2%
SET SECOND=%time:~6,2%

但是,这么写是有前提条件的,那就是在prompt打印%date%的结果应该是这样的:

image

%date:~10,4%的意思是,从%date%的第10位开始往下取4位,即YEAR=2015;同理,

image

%time:~0,2%的意思是,从%time%的0位开始往下取2位,即HOUR=11。

需要注意的是,在你当前的系统设置下打印出的%date%可能不是上图中显示的格式(比如,可能没有前面的周几的信息)。要用上面的代码,就需要对系统设置进行更改。

        任务管理器-修改日期、时间或数字格式-短日期格式:dddd M/d/yyyy其中dddd表示day of week

或者不改系统设置的话,根据%date%回显对变量位置进行相应的调整,比如回显是‘2015/3/11’,YEAR就是%date:~0,4%。

原文地址:https://www.cnblogs.com/urwlcm/p/4329515.html