如果完成时间过长需要中止外部流程

时间:2016-07-13 19:41:19

标签: batch-file

我正在编写一个批处理脚本,它使用外部Python脚本一次处理许多文件。我想实现一个功能,如果Python脚本在任何文件上挂起太久(例如文件已损坏),Python脚本将终止,批处理脚本将移动到下一个文件。我见过这个网站上的其他人建议在一定时间后使用超时终止程序;但是,这对于这种情况来说远非理想,因为这会为每个磁贴的脚本运行时间增加很多秒。

我的问题是:有没有办法限制外部进程的运行时间,如果进程在时间结束之前完成,不会造成延迟?

这是我的一些代码。最后的TexIDfix.py是我需要阻止挂起的Python脚本。非常感谢任何帮助:)

:fixer
for /f %%f in ('dir /b "workspace\content\patch\data\fighter\%1\model\%3"') do (
    set val=%%f
    set val=!val:~1!
    if /I !val!==01 set val=1
    if /I !val!==02 set val=2
    if /I !val!==03 set val=3
    if /I !val!==04 set val=4
    if /I !val!==05 set val=5
    if /I !val!==06 set val=6
    if /I !val!==07 set val=7
    if /I !val!==08 set val=8
    if /I !val!==09 set val=9
    set /a "val=val*4"
    if /I !val! GTR 255 (
        set /a "mod/=255"
        echo !mod!
        set /a "val=val-(255*mod)"
        echo !val!
    )
    TexIDfix.py "workspace\content\patch\data\fighter\%1\model\%3\%%f\%2.nud" "workspace\content\patch\data\fighter\%1\model\%3\%%f\model.nut" !val!
)

goto:eof

0 个答案:

没有答案