复制代码 代码如下:
rem DOS get current time
rem =======================
rem get yyyy/mm/dd
set mydate=%DATE:~0,10%
echo %mydate%
rem =======================
rem get yyyy
set yyyy=%DATE:~0,4%
echo %yyyy%
rem =======================
rem get mm
set mm=%DATE:~5,2%
echo %mm%
rem =======================
rem get dd
set dd=%DATE:~8,2%
echo %dd%
rem =======================
rem get yyyy-mm-dd
set curdate=%yyyy%-%mm%-%dd%
echo %curdate%
其实bat中获取时间就是利用截取日期字符串的方法
DOS下有字符处理的方法的,总结如下:
在这个日期格式下:”2013-07-22 星期一”, 这个%DATE:~0,10%得到的是2013-07-22
说明:DATE为系统变量,“:”表示开始处理前面的字符串“~0,10”表示从第0个字符开始取10个字符。
输出:
C:Documents and SettingsAdministrator>rem DOS get current time
C:Documents and SettingsAdministrator>rem =======================
C:Documents and SettingsAdministrator>rem get yyyy/mm/dd
C:Documents and SettingsAdministrator>set mydate=2013-07-22
C:Documents and SettingsAdministrator>echo 2013-07-22
2013-07-22
C:Documents and SettingsAdministrator>rem =======================
C:Documents and SettingsAdministrator>rem get yyyy
C:Documents and SettingsAdministrator>set yyyy=2013
C:Documents and SettingsAdministrator>echo 2013
2013
C:Documents and SettingsAdministrator>rem =======================
C:Documents and SettingsAdministrator>rem get mm
C:Documents and SettingsAdministrator>set mm=07
C:Documents and SettingsAdministrator>echo 07
07
C:Documents and SettingsAdministrator>rem =======================
C:Documents and SettingsAdministrator>rem get dd
C:Documents and SettingsAdministrator>set dd=22
C:Documents and SettingsAdministrator>echo 22
22
C:Documents and SettingsAdministrator>rem =======================
C:Documents and SettingsAdministrator>rem get yyyy-mm-dd
C:Documents and SettingsAdministrator>set curdate=2013 -07 -22
C:Documents and SettingsAdministrator>echo 2013 -07 -22
2013 -07 -22
C:Documents and SettingsAdministrator>