标题: [其他] [已解决]批处理如何控制当前正在执行命令强制结束 [打印本页]
作者: huhete 时间: 2010-4-14 23:01 标题: [已解决]批处理如何控制当前正在执行命令强制结束
如:for /f %%i in (x.txt) do xxx.exe %%i
在执行这个循环的时候,如果%%i为一些具体的值时,xxx.exe执行会出现假死,需要ctrl+c结束,才能继续循环,有什么好的方法,控制命令的执行时间,每次循环让它自动结束。[已解决]
[ 本帖最后由 huhete 于 2010-4-15 12:08 编辑 ]
作者: hanyeguxing 时间: 2010-4-14 23:35
原帖由 huhete 于 2010-4-14 23:01 发表
如:for /f %%i in (x.txt) do xxx.exe %%i
在执行这个循环的时候,如果%%i为一些具体的值时,xxx.exe执行会出现假死,需要ctrl+c结束,才能继续循环,有什么好的方法,控制命令的执行时间,每次循环让它自动结束。 ...
我看不出批处理这样写的目的是什么。。。。
作者: GNU 时间: 2010-4-14 23:40
在每次执行xxx.exe之前,先杀掉它的进程。
作者: huhete 时间: 2010-4-15 00:07
是不是需要我有一个守护的批处理啊,每次循环前先执行批处理监视,如果超时则结束xxx.exe的进程啊
但是这样不能判断是不是本次循环产生的xxx.exe的进程啊
[ 本帖最后由 huhete 于 2010-4-15 00:10 编辑 ]
作者: hanyeguxing 时间: 2010-4-15 00:19
在for内做判断。。。
作者: GNU 时间: 2010-4-15 00:28
- @echo off
- for /f %%i in (x.txt) do (
- ping -n 10 127.1 >nul
- taskkill /f /im xxx.exe 1>nul 2>&1
- xxx.exe %%i
- )
复制代码
作者: philorain 时间: 2010-4-15 02:07
ls的没有用,如果上一个是假死的,就不会退出xxx.exe也就不可能进行这一次循环
作者: yangfengoo 时间: 2010-4-15 07:01
- @echo off
- for /f %%i in (x.txt) do (
- start "" xxx.exe %%i
- ping -n 10 127.1 >nul
- taskkill /f /im xxx.exe 1>nul 2>&1
- )
复制代码
作者: GNU 时间: 2010-4-15 17:35 标题: 回复 7楼 的帖子
- @echo off
- for /f %%i in (x.txt) do (
- ping -n 10 127.1 >nul
- taskkill /f /im xxx.exe 1>nul 2>&1
- start xxx.exe %%i
- )
复制代码
作者: qzwqzw 时间: 2010-4-15 17:45
回8楼和9楼
最好加一个进程是否存在并随时继续循环的判断
这样可以不必每个xxx.exe进程都等待9秒
欢迎光临 批处理之家 (http://bbs.bathome.net/) |
Powered by Discuz! 7.2 |