我有一个日期,08/27/2016
想要将此日期传递给cmd,它应该将日期作为201627
返回给我。我怎么能这样做?
答案 0 :(得分:1)
在CMD中,您使用环境变量替换:
set "d=08/27/2016"
set "month=%d:~0,2%"
set "day=%d:~3,2%"
set "year=%d:~6,4%"
echo %year%%day%
不幸的是,微软似乎已将其从official documentation中移除,因此我引用set /?
中的相关段落:
环境变量替换增强如下:
%PATH:str1=str2%
将扩展PATH环境变量,用“str2”替换扩展结果中每次出现的“str1”。 “str2”可以是空字符串,可以有效地从扩展输出中删除所有出现的“str1”。 “str1”可以以星号开头,在这种情况下,它将匹配从扩展输出的开头到str1剩余部分的第一次出现的所有内容。
也可以指定扩展的子字符串。
%PATH:~10,5%
将扩展PATH环境变量,然后仅使用从扩展结果的第11个(偏移10)字符开始的5个字符。如果未指定长度,则默认为变量值的其余部分。如果数字(偏移或长度)为负数,则使用的数字是添加到指定偏移量或长度的环境变量值的长度。
%PATH:~-10%
将提取PATH变量的最后10个字符。
%PATH:~0,-2%
将提取除PATH变量的最后2个字符之外的所有字符。