Board logo

标题: 【已解决】麻烦大家帮我看下代码 [打印本页]

作者: chouxia    时间: 2014-10-10 13:30     标题: 【已解决】麻烦大家帮我看下代码

本帖最后由 chouxia 于 2014-10-28 08:17 编辑

%1=1715  %2=c:\work\  %3=aka  %4=aack6
其实这段代码原来是这样的:
@echo off
set fin=%1
set comp=%2
set pathwork=%3
set workname=%4
set start=0
set job0=0
set start=-100
set end=-1
set plu=0
set file=0
set numjob=0
set numplu=0
set numwork=0
set jobae=0
set jobplu=0
::setlocal enabledelayedexpansion
if defined fin ( echo ok ) else ( echo error) & goto exit
if defined comp (echo ok ) else (echo error) & goto exit
if defined pathwork ( echo ok ) else ( echo error) & goto exit
if defined workname ( echo ok ) else (  echo error) & goto exit
:job
set /a numjob=%numjob%+1
echo %date% %time%  正在生成第%numjob%个工程配置文件,请稍后!
set /a start=%start%+100
set /a end=%end%+100
set /a job0=job0+1
echo aka=%start%-%end% >%pathwork%\aka_job_%plu%.job
set /a endend=%end%-100
set /a finfin=%fin%-100
if %end% equ %fin% (goto plugin
        ) else ( if %endend% lss %finfin% (goto job
                ) else         if %endend% gtr %finfin% (
                        set /a end=%finfin%-100
                        set /a start=%start%-100
                        goto job
                        )
        )
)
:plugin
set /a numplu=%numplu%+1
echo %date% %time%  正在生成第%numplu%个aka配置文件,请稍后!
set /a plu=%plu%+1
set /a file=%file%+1
echo bbbbbb >%pathwork%\aka_plugin_%plu%.job
if %plu% equ %job0% (goto ready
) else if %plu% lss %job0% goto plugin  else if %plu% gtr %job0% echo plugin发生错误!
:ready
echo 总共生成工程配置文件%numjob%个。DeadLine渲染配置文件%numplu%个!
echo 警告:工程配置文件与渲染配置文件数量必须相同,否则不保证渲染结果完整性!
if %numjob% equ %numplu% ( echo 配置文件数量检测正常! 程序继续运行 ) else ( echo 配置文件数量异常,程序退出!) & goto exit
echo %time% %date% 正在启动aka!请稍后。
goto run
:run
set /a jobae=%jobae%+1
set /a jobplu=%jobplu%+1
echo 执行第%jobae%个任务
c:\"Program Files (x86)"\aka\aka102\bin\Windows\akacommand.exe %pathwork%\aka_job_%jobae%.job  %pathwork%\aka_plugin_%jobplu%.job  " \%pathwork%\%workname%"
if %jobae% equ %job0% (goto exitend
) else if %jobae% lss %job0% goto run  else if %jobae% gtr %job0% echo run发生错误!
goto ontop
:exitend
sed -i s/work=0/work=1/g %pathwork%\work.txt
echo filenumber=%file% >>work.txt
echo %date%  %time%  程序执行完成。正常退出!
exit
:exit
echo %date% %time% 程序异常退出!请查看错误报告!
现在 就是想在循环输出配置文件的时候让程序在如下情况的时候goto plugin
start=1700
end=1715
但我这里一直有问题
绕来绕去迷糊了。
技术有限,麻烦大家帮帮忙!
代码有很多多余的部分,请忽略。还没整理呢
作者: Batcher    时间: 2014-10-10 14:39

set start=0
set job0=0
set start=-100
有两个start赋值,请确定哪个是你想要的。
作者: chouxia    时间: 2014-10-10 15:09

要-100
因为后面有个start=%start%+100
循环初始的时候start必须为0
作者: Batcher    时间: 2014-10-10 17:06

if %end% equ %fin% (goto plugin
因为 end 每次都是加上100,所以它永远不可能等于1715




欢迎光临 批处理之家 (http://www.bathome.net/) Powered by Discuz! 7.2