三种DOS批处理下格式化日期字符串方法

  次阅读 作者:智能小宝 来源:互联网 2016-01-19 12:57 我要评论(0)

在Linux下,简单的一句话:date '+%Y%m%d-%H%M%S'就可以得到你要的输出:20120331-064219 可是在windows下,要想得到这个,还是需要费点功夫的

谈到日期字符串的输出,真是让人烦。

在Linux下,简单的一句话:date '+%Y%m%d-%H%M%S'就可以得到你要的输出:20120331-064219

可是在windows下,要想得到这个,还是需要费点功夫的。

1. 直接用字符串格式化输出

比如,如果你的机器上时间的输出是这样子的:

c:>echo %date%-%time%

2012-03-31 星期六- 6:44:02.50

那么,要想得到输出20120331- 64402,可以这样截取字符串:

c:>echo %date:~0,4%%date:~5,2%%date:~8,2%-%time:~0,2%%time:~3,2%%time:~6,2%

20120331- 65406

表示取从0位置开始4个字符等等。这个方法不能截断空格。比较恼火

2.用for语句分断截取,似乎好点

先看看for的用法:

代码如下:

FOR /F ["options"] %variable IN (file-set) DO command [command-parameters]

FOR /F ["options"] %variable IN ("string") DO command [command-parameters]

FOR /F ["options"] %variable IN ('command') DO command [command-parameters]

optinos

eol=c- 指一个行注释字符的结尾(就一个)//要忽略以什么字符开头的行

skip=n- 指在文件开始时忽略的行数。

delims=xxx- 指分隔符集。这个替换了空格和跳格键的//指定分割的字符列入delims=;:.使用了";",":","."做分隔

默认分隔符集。

tokens=x,y,m-n- 指每行的哪一个符号被传递到每个迭代

的 for 本身。这会导致额外变量名称的分配。m-n

格式为一个范围。通过 nth 符号指定 mth。如果

符号字符串中的最后一个字符星号,

那么额外的变量将在最后一个符号解析之后

分配并接受行的保留文本。

usebackq- 指定新语法已在下类情况中使用:

在作为命令执行一个后引号的字符串并且一个单

引号字符为文字字符串命令并允许在 filenameset

中使用双引号扩起文件名称。

参照这个用法,我们可以对日期字符串进行格式化输出:

因为日期结果是:2012-03-31 星期六

因为分隔字符是'-'还有空格' ',所以取3段出来,如:

c:>for /f "tokens=1-3 delims=- " %1 in ("%date%") do @echo %1%2%3

20120331

再看时间:

c:>echo %time%

6:59:20.38

c:>for /f "tokens=1-3 delims=.: " %1 in ("%time%") do @echo %1%2%3

65939

两者一结合起来可以这样用:

代码如下:

c:>for /f "tokens=1-3 delims=- " %1 in ("%date%") do set ttt=%1%2%3

c:>set ttt=20120331

c:>for /f "tokens=1-3 delims=.: " %1 in ("%time%") do set ttt=%ttt%-%1%2%3

c:>set ttt=20120331-70131

本站文章信息来源于网络以及网友投稿,本站只负责对文章进行整理、排版、编辑,是出于传递更多信息之目的,并不意味着赞同其观点或证实其内容的真实性。如果您有什么意见或建议,请联系QQ28-1688-302!

人工智能实验室
相关文章相关文章
  • 韩春雨称已能重复实验结果 近期将有消息公布

    韩春雨称已能重复实验结果 近期将有消息公布

  • 英国研发“杀生”机器人 通过生命体获取能量

    英国研发“杀生”机器人 通过生命体获取能量

  • 无人驾驶汽车如何改变城市生活?听听他们怎么说

    无人驾驶汽车如何改变城市生活?听听他们怎么说

  • 未来两年人工智能要怎么走?看这篇就够了

    未来两年人工智能要怎么走?看这篇就够了

网友点评网友点评
阅读推荐阅读推荐

据国外媒体报道,在过去两年内,聊天机器人(chatbot)、人工智能以及机器学习的研发和采用取得了巨大进展。许多初创公司正利用人工智能和...

霍金 视觉中国 图 英国著名物理学家霍金(Stephen Hawking)再次就人工智能(AI)发声,他认为:对于人类来说,强大AI的出现可能是最美妙的...

文|郑娟娟 今年,人工智能(AI) 60岁了。在AI60岁的时候,笔者想要介绍一下AI100,一个刚刚2岁的研究项目,但它的预设寿命是100年,甚至更长...

AlphaGo与李世石的人机大战,为大众迅速普及了人工智能的概念。 但对谷歌而言,除了下围棋,现在的人工智能进展到哪一步了?未来,人工智能...