我正在使用Windows 10专业版。我想创建一个批处理文件:
到目前为止,我已经弄清楚了下面的代码可以写入我的批处理文件中:
@echo off
start "C:\Program Files\Mozilla Firefox\firefox.exe" "http://testmywebsiteloadspeed.com"
ping -n 1 -w 60
但这什么也没做。另外我该如何达到3&4?
GOTO
尝试以下批处理:
@echo off
set loopCount=50
:loop
start "C:\Program Files\Mozilla Firefox\firefox.exe" "http://testmywebsiteloadspeed.com"
set /a loopCount=%loopCount%-1
if %loopCount%==0 GOTO:EOF
timeout /t 60
taskkill /im firefox.exe
timeout /t 5
GOTO :loop
:loop
定义一个GOTO
点。timeout /t 60
等待60秒taskkill /im firefox.exe
会杀死Firefox进程GOTO :loop
将重新路由回到脚本的开头。注意:这将杀死所有正在运行的Firefox进程。我认为Firefox通常一次只能允许一个。
GOTO
为了对特定数量的迭代执行此操作,可以使用set /a
对loopCount变量进行一些数学运算。
@echo off
set loopCount=50
:loop
start "C:\Program Files\Mozilla Firefox\firefox.exe" "http://testmywebsiteloadspeed.com"
set /a loopCount=%loopCount%-1
if %loopCount%==0 GOTO:EOF
timeout /t 60
taskkill /im firefox.exe
timeout /t 5
GOTO :loop
set /a loopCount=%loopCount%-1
每次循环运行时,该行都会将loopCount的值减少一。该if %loopCount%==0 GOTO:EOF
行在到达0时将退出脚本。
GOTO:EOF
表示“转到文件末尾”,它将绕过文件中的任何其他代码。
FOR /l
另一种解决方案是将FOR
循环与/l
开关配合使用,但是在使用嵌套循环时遇到了问题,因此我通常会坚持使用GOTO
像这样的简单批处理文件。不过,我希望这会在将来对某人有所帮助。
@echo off
for /l %%x in (1, 1, 50) do (
start "C:\Program Files\Mozilla Firefox\firefox.exe" "http://testmywebsiteloadspeed.com"
set /a loopCount=%loopCount%-1
if %loopCount%==0 GOTO:EOF
timeout /t 60
taskkill /im firefox.exe
timeout /t 5
)
分解FOR /l
命令:
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句