我有几个运行在目录中的脚本。它们都是同时执行的。我无法确定哪个脚本最后完成。有没有办法找到这个?确定哪个脚本最后完成
1
A
回答
2
使用主脚本通过.Exec启动(子)脚本;监视exec对象的状态属性;记录/显示执行对象状态更改为WshFinished的时间。
1
我的建议是基于WMI。 (新鲜的想法下面滚动)
Option Explicit
Dim objWMIService, colProcesses, objProcess
Dim iCount, iLoop, sFileName
Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}!\\" _
& ".\root\cimv2")
' wait all scripts to finish
Do While True
WScript.Sleep 200
' snapshot running scripts
Set colProcesses = objWMIService.ExecQuery(_
"Select * From Win32_Process " _
& "Where Name = 'WScript.exe' " _
& "OR Name = 'CScript.exe'", , 48)
iCount = 0
For Each objProcess In colProcesses
' skip current "monitor" script, test the rest
If InStr (objProcess.CommandLine, WScript.ScriptName) = 0 Then
sFileName = Split(objProcess.CommandLine, """")(3)
iCount = iCount + 1
End If
Next
If iCount < 1 Then Exit Do
iLoop = iLoop + 1
Loop
' and show what we get
If iLoop > 0 Then
WScript.Echo "LastOne:" & vbNewLine & sFileName
Else
WScript.Echo "No other .vbs running except Me"
End If
[编辑]好了,一个新的想法出现在我的脑海,现在,也许你会发现它很有趣,或者至少给它一个尝试。
' do your work here...
WScript.Sleep 3000
Call SelfLogged
Sub SelfLogged()
Const ForAppending = 8
With CreateObject("Scripting.FileSystemObject")
With .OpenTextFile(WScript.ScriptFullName, ForAppending)
.Write Chr(0)
End With
End With
End Sub
这个想法是通过在文件中附加一个字符来改变文件DateLastModified
属性。
2
基本日志记录将做的工作,在脚本开始和结束时,你也可以登录时间,当写日志条目。您可以将结果写入日志文件。结果以秒为单位。
startTime=timer
wscript.echo "started at " & startTime
'do your stuff'
wScript.sleep 500
stopTime=timer
wscript.echo "stopped at " & StopTime & " duration was " & stopTime - startTime
'started at 81558,17
'stopped at 81558,67 duration was 0,5
相关问题
- 1. 如何确定完成哪个线程
- 2. PHP脚本404完成后
- 3. 在哪里把bash完成脚本
- 4. 脚本完成后退出屏幕
- 5. 完成sge作业后运行脚本
- 6. Python完成脚本后挂起
- 7. 完成后期望脚本不退出
- 8. shell脚本 - 完成
- 9. 当脚本完成时调用自己的php脚本 - 不确定地
- 10. 确定后台服务何时完成
- 11. 在JavaScript脚本完成后加载jQuery脚本
- 12. 自定义脚本的zsh完成
- 13. PHP运行脚本,然后重定向一次完成
- 14. 找到最后合并完成到一个分支明确
- 15. 确定哪个用户已完成调查 - Limesurvey
- 16. 确定哪个PHP脚本执行特定的mysql查询
- 17. 如何在完成前一个脚本之后运行苹果脚本
- 18. 脚本完成后如何退出three.js的每个实例?
- 19. bash脚本多个rsync之前完成之后
- 20. jquery:等待脚本完成,然后再启动另一个
- 21. 直到脚本完成后文件才写完
- 22. Python脚本未完成
- 23. WordPress的确定哪个文件排队脚本
- 24. 如何确定哪个URL访问了脚本
- 25. 如何确定在PHP-FPM过程中执行哪个脚本
- 26. 视图完全加载完成后,调用哪个函数?
- 27. PHP后台进程完成后启动脚本?
- 28. 脚本完成后如何保持过程后台?
- 29. 哪个处理器成本最高?
- 30. 哪个TextEditor最容易定制为新的脚本语言?