taskkill close windows 和 for 循环过早结束
taskkill close windows and for loop ending prematurely
我创建了一个带有 for 循环的批处理文件 (start_loop.bat),该循环 运行 是另一个批处理文件 (run_program.bat),并在 45 分钟后将其终止。
这是我的代码:
@echo off
FOR %%A IN (1,1,100) DO (
start run_program.bat
timeout 2700
Taskkill /IM program.exe /F
timeout 3
)
call start_loop.bat
一切正常,但 Taskkill 在终止程序后不会关闭 cmd window。这没什么大不了的,但过了一会儿,我最终得到了很多我不需要的 windows 打开。
是否可以选择传递给 taskkill 以关闭 window?
此外,我必须添加
call start_loop.bat
在最后,因为在几个循环之后 "start_loop.bat" 过早结束。这是让它存活的正确方法吗?有没有更好的办法?
谢谢
评论后编辑:
1- 循环应该 运行 永远
2-可以'brutally'关闭程序运行ning
3-批处理文件工作正常。该程序按预期被终止,并且新实例按预期启动。只是 cmd window 没有关闭
4- run_program.bat
只需 运行s program.exe
和一些选项,例如:
program.exe option1 option2
在 run_program.bat
末尾添加 exit
就可以了。现在 window 一旦程序被杀死就会关闭。
这是我最终使用的代码,非常适合我的应用程序:
@echo off
:Loop
start run_program.bat
timeout 2700
Taskkill /IM program.exe /F
timeout 3
goto Loop
谢谢大家的建议
我创建了一个带有 for 循环的批处理文件 (start_loop.bat),该循环 运行 是另一个批处理文件 (run_program.bat),并在 45 分钟后将其终止。 这是我的代码:
@echo off
FOR %%A IN (1,1,100) DO (
start run_program.bat
timeout 2700
Taskkill /IM program.exe /F
timeout 3
)
call start_loop.bat
一切正常,但 Taskkill 在终止程序后不会关闭 cmd window。这没什么大不了的,但过了一会儿,我最终得到了很多我不需要的 windows 打开。 是否可以选择传递给 taskkill 以关闭 window?
此外,我必须添加
call start_loop.bat
在最后,因为在几个循环之后 "start_loop.bat" 过早结束。这是让它存活的正确方法吗?有没有更好的办法?
谢谢
评论后编辑:
1- 循环应该 运行 永远
2-可以'brutally'关闭程序运行ning
3-批处理文件工作正常。该程序按预期被终止,并且新实例按预期启动。只是 cmd window 没有关闭
4- run_program.bat
只需 运行s program.exe
和一些选项,例如:
program.exe option1 option2
在 run_program.bat
末尾添加 exit
就可以了。现在 window 一旦程序被杀死就会关闭。
这是我最终使用的代码,非常适合我的应用程序:
@echo off
:Loop
start run_program.bat
timeout 2700
Taskkill /IM program.exe /F
timeout 3
goto Loop
谢谢大家的建议