脚本之家,脚本语言编程技术及教程分享平台!
分类导航

Python|VBS|Ruby|Lua|perl|VBA|Golang|PowerShell|Erlang|autoit|Dos|bat|shell|

服务器之家 - 脚本之家 - VBS - Windows系统中通过vbs实现循环运行.bat/.exe等文件

Windows系统中通过vbs实现循环运行.bat/.exe等文件

2024-04-15 11:40洪墨水 VBS

有时候我们需要在电脑上循环运行一些命令,例如每5分钟执行一次,如果不结合别的计划软件就可以通过vbs来实现

在VBScript中,你可以使用一个无限循环,并在每次迭代中使用 WScript.Sleep 方法暂停一段时间,然后后续继续执行。

一、创建循环运行的run-everySecond.vbs文件【双击次文件即可启动运行】

dim a
set a=CreateObject("Wscript.Shell")
Do
##运行xxx.exe文件,后面的0表示:不弹出运行黑窗口
a.run "E:/xxx.exe",0
Wscript.Sleep 60000
Loop

注:

1.a.run "E:/xxx.exe",0 :运行xxx.exe文件,后面的0表示不弹出运行黑窗口

2.Wscript.Sleep 60000:休息60秒,即每分钟循环执行

代码二

Set WshShell = WScript.CreateObject("WScript.Shell")
' 设置你想要执行的程序路径
strProgramToRun = "C:\Path\To\Your\Program.exe"
' 设置间隔时间(毫秒)
intervalTime = 1000 * 60 ' 例如,60 秒
Do While True
    ' 执行程序
    WshShell.Run strProgramToRun, 0, False
    ' 暂停指定的时间
    WScript.Sleep(intervalTime)
Loop

请将 strProgramToRun 的值替换为你想要执行的程序的路径。intervalTime 变量定义了两次执行之间的间隔时间,以毫秒为单位。
注意:这个脚本会持续不断地运行,直到你手动终止它。

代码三

每隔一段时间自动敲键盘的的vbs脚本

set ws=createobject("wscript.shell") 
do 
ws.sendkeys "{TAB}" 
WScript.Sleep Int(6	*Rnd+1)*1000
loop

每隔1~6秒,按一次TAB键
即可以是{TAB}也可以{F5}刷新页面
定义每次按键的间隔
WScript.Sleep Int(6*Rnd+1)*1000
睡眠一定的时间
Rnd : 生成一个[0,1)的数
*Int(6 Rnd+1) : 生成一个1-6之间的整数
1s = 1000ms
WScript.Sleep Int(6 *Rnd+1)*1000 : 每次睡眠1~6秒

二、创建停止循环运行的shutdown-everySecond.vbs文件【双击次文件即可停止运行】

dim WSHshell
set WSHshell = wscript.createobject("wscript.shell")
WSHshell.run "taskkill /im wscript.exe /f ",0 ,true

或者创建停止运行的shutdown-everySecond.bat文件【双击次文件即可停止运行】

taskkill -f -t -im wscript.exe

注:bat文件,没法去掉黑窗口的弹出

到此这篇关于Windows系统中通过vbs实现循环运行.bat/.exe等文件的文章就介绍到这了,更多相关vbs定时循环运行内容请搜索服务器之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持服务器之家!

原文链接:https://www.cnblogs.com/hongmoshui/p/10868228.html

延伸 · 阅读

精彩推荐