我创建了这张支票:
' Check if windows or mac
if not objFSO.FolderExists("\\Client\C$\.") then
Wscript.Quit
end if
该检查只是看它是否是Windows系统。如果它是Windows机器,那么运行脚本,如果不是我只是想让它退出。我需要做另一次检查以确保两种情况都是正确的,我不确定如何。 使用netstat命令有一个输出。在本地地址下有一个地址,其端口为1494,机器名为cag.domain.com。我如何包含一个检查,以便如果脚本刚刚关闭,则两个部分必须为true才能运行脚本。 所以如果\ Client \ C $。 = True和本地地址:1494和外部地址= cag.domain.com = false脚本将无法运行。
答案 0 :(得分:1)
我目前不在Windows机器上,因此我无法为netstat提供正确的参数,也无法为正确的正则表达式模式提供正确的参数,但要检查netstat
的输出我会做以下事情:
Dim WshShell, oExec
Set WshShell = CreateObject("WScript.Shell")
Set myRegExp = New RegExp
myRegExp.IgnoreCase = True
myRegExp.Global = True
myRegExp.Pattern = ":1497[ ]cag[.]domain[.]com"
Set oExec = WshShell.Exec("netstat -a")
'wait for the end of process (busy wait, yuck!)
Do While oExec.Status = 0
WScript.Sleep 100
Loop
'scan the command output flow
Dim oMatchColl, gotNetstat
gotMatch = false
Do While oExec.StdOut.AtEndOfStream <> True
oMatchColl = myRegExp.Execute(oExec.StdOut.ReadLine)
If oMatchColl.Count > 0 Then
gotNetstat = true
Exit Do
End If
Loop
了解更多: