VBS实现将当前时间转换成UTC时间(vb实时输出数据)真没想到

随心笔谈2年前发布 admin
195 0 0

文章摘要

这篇文章介绍了一个使用VBS脚本的工具,名为`Date2UTC.vbs`,用于将给定的日期时间转换为Unix时间(以秒为单位,从1970年1月1日00:00:00 UTC开始)。该脚本首先检查命令行参数,如果没有参数,默认使用当前日期时间;如果有多个参数,使用第一个参数作为日期,第二个参数作为时间。它处理这些参数并将其转换为日期对象,然后计算从1970-01-01到该日期的秒数。脚本还包含错误处理机制,确保在参数格式不正确时能够停止执行。工具的使用方法和相关注释也进行了说明。


Option Explicit

Dim dtmDate

If WScript.Arguments.Named.Count > 0 Then Syntax

With WScript.Arguments.Unnamed
‘ Check command line arguments
If .Count=0 Then dtmDate=Now
If .Count > 0 Then dtmDate=.Item(0)
If .Count > 1 Then dtmDate=dtmDate & ” ” & .Item(1)
If .Count > 2 Then dtmDate=dtmDate & ” ” & .Item(2)
If .Count > 3 Then Syntax
On Error Resume Next
dtmDate=CDate( dtmDate )
If Err Then
On Error Goto 0
Syntax
End If
On Error Goto 0
If Not IsDate( dtmDate ) Then Syntax
End With

‘ Calculate and display the result
WScript.Echo DateDiff( “s”, “1970-01-01 00:00:00”, dtmDate )

Sub Syntax
WScript.Echo vbcrlf _
& “Date2UTC.vbs, Version 1.00” _
& vbCrLf _
& “Convert any date/time to Unix time (UTC)” _
& vbCrLf & vbCrLf _
& “Usage: CSCRIPT.EXE //NoLogo Date2UTC.vbs date [ time ]” _
& vbCrLf & vbCrLf _
& “Where: “”date”” is the date to convert (default: current date/time)” _
& vbCrLf _
& ” “”time”” is the optional time to convert” _
& vbCrLf & vbCrLf _
& “Notes: Though often called UTC, Unix time does not take into account leap” _
& vbCrLf _
& ” seconds, while “”official”” UTC does.” _
& vbCrLf _
& ” If the specified date is ambiguous, the current user’s date” _
& vbCrLf _
& ” and time format is assumed.” _
& vbCrLf & vbCrLf _
& “Written by Rob van der Woude” _
& vbCrLf _
& “http://www.robvanderwoude.com”
WScript.Quit 1
End Sub

© 版权声明

相关文章