Board logo

标题: [日期时间] 批处理如何调用mshta获取当前系统日期? [打印本页]

作者: Python    时间: 2013-6-20 22:01     标题: 批处理如何调用mshta获取当前系统日期?

本帖最后由 pcl_test 于 2016-7-21 22:18 编辑

希望得到的格式是:
yyyymmdd
作者: apang    时间: 2013-6-20 22:54

这样可以不?
  1. @echo off
  2. %1set "D=Year(Date)^&Right("0"^&Month(Date),2)^&Right("0"^&Day(Date),2)"
  3. %1mshta vbscript:CreateObject("WScript.Shell").Run("%~s0 :: "^&%D%)(Window.Close)&goto :eof
  4. echo,%2
  5. pause
复制代码

作者: terse    时间: 2013-6-20 23:45

  1. @echo off
  2. %1mshta vbscript:createobject("wscript.shell").run("%~fs0 : "^&year(date)*10000+Month(Date)*100+Day(Date))(close)&exit
  3. echo %2
  4. pause>nul
复制代码

作者: Python    时间: 2013-6-21 13:14

回复 2# apang


    这样会新启动一个cmd进程吧,有没有类似于start /b这样的方法?
作者: Python    时间: 2013-6-21 13:15

回复 3# terse


    有没有不启动新cmd进程的方法?
作者: apang    时间: 2013-6-21 14:28

回复 4# Python


    如果用fso将结果写入一个文本文件,不会有两个cmd进程。但不明白这样做有什么用啊?
  1. @echo off
  2. set "D=Year(Date)^&Right("0"^&Month(Date),2)^&Right("0"^&Day(Date),2)"
  3. mshta vbscript:CreateObject("Scripting.FileSystemObject").CreateTextFile("a.txt",True).Write(%D%)(Window.Close)
复制代码

作者: batman    时间: 2013-6-21 14:35

当前系统日期直接在cmd中获取不行?
作者: CrLf    时间: 2013-6-21 15:10

回复 7# batman


    估计楼主是用来计算日期差什么的吧?
作者: Python    时间: 2013-6-21 17:53

回复 7# batman


    主要是担心不同的系统里面日期格式不一样
作者: Python    时间: 2013-6-22 08:43

回复 6# apang


    多谢。在实际的使用中要进行计算、比较、进一步处理等。肯定不是只显示一下,那没有任何意义嘛
作者: terse    时间: 2013-6-22 10:34

一定要mshta获取吗
  1. @echo off
  2. for /f %%i in ('WMIC OS GET LocalDateTime') do set str=%%i
  3. echo %str:~,8%
  4. pause
复制代码

作者: Python    时间: 2013-6-23 08:38

回复 11# terse


    受限用户(没有管理员权限)是不能运行WMIC的,首次执行的时候它不是要安装吗。所以不太通用。
作者: chok    时间: 2013-7-19 11:40

大神们,有没有在获取系统当前时间的同时与北京时间做比较,将时间不准的信息拉出来。
作者: pcl_test    时间: 2016-7-21 22:17

  1. for /f %%a in ('mshta VBScript:Execute("FmtDate=right(year(now),4)&right(""0""&month(now),2)&right(""0""&day(now),2):CreateObject(""Scripting.FileSystemObject"").GetStandardStream(1).Write FmtDate:close"^)') do echo;%%a
复制代码





欢迎光临 批处理之家 (http://bbs.bathome.net/) Powered by Discuz! 7.2