我想执行以下操作。
- 从包含许多单词的输入文件中一次读取 1 个单词。
- 将此单词作为参数传递给另一个基于命令行的应用程序。
- 运行该应用程序一段固定的时间,比如 10 秒。
- 如果应用程序在 10 秒后仍在运行,则中止执行并返回,从输入文件中选择下一个单词并重复步骤 1 到 3。
这是我写的,尽管它并没有完全达到我想要的效果:
@echo off
for /f %%i in ('type input.txt') do call:Routine %%i
:Routine
set app="myApp.exe"
set limit=60
%app% %1
goto Delay
:Delay
ping localhost -n %limit% > nul
上面的脚本会引入 myApp 执行完成后的延迟。但是,我希望它运行 myApp.exe 不超过 10 秒,如果确实如此,则使用 taskkill 中止应用程序并从输入文件转到下一个单词。
我在网上搜索了一个解决方案并遇到了这个:
http://www.tech-archive.net/Archive/WinXP/microsoft.public.windowsxp.general/2006-04/msg03609.html
虽然它没有准确回答我的查询,但我想让我的代码做类似的事情。
谢谢。