2017-02-22 7 views
1

Мой пакетный файл ниже, создает файл .avs для данного списка параметров, а затем запускает программу, которая принимает этот .avs-файл в качестве аргумента и делает это несколько раз в цикле for.Мои оконные партии говорят: «72 было неожиданным в это время».

Но когда я запускаю свой пакетный файл, он печатает 72 is unexpected at this time., 72 - значение одного из параметров. Файл .avs не создается и программа не выполняется.

Мой командный файл и его вывод в командной строке с REM @echo off ниже.

Мой командный файл:

REM @echo off 

set RawSource26=C:\_rawsource26\RawSource26.dll 
set avsFile=.\temporary.avs 
set avs2yuv=C:\_avs2yuv\avs2yuv.exe 

set video=balloons 
set views=^ 
1^
2^
3^
4^
5 
set rates=^ 
1Mbps^
2Mbps^
3Mbps^
4Mbps^
5Mbps 
set width=1024 
set height=768 
set cropLeft=72 
set cropTop=0 
set cropRight=0 
set cropBottom=0 

(for %%v in (%views%) do (
    @echo. 2> %avsFile% 
    @echo LoadPlugin("%RawSource26%") >> %avsFile% 
    @echo Crop(RawSource(".\renderOut\%video%_%%v_synth.yuv", %width%, %height%, "i420"), %cropLeft%, %cropTop%, %cropRight%, %cropBottom%) >> %avsFile% 
    %avs2yuv% %avsFile% -raw -o .\avsOut\%video%_%%v_synth_avs.yuv 
    (for %%r in (%rates%) do (
    @echo. 2> %avsFile% 
    @echo LoadPlugin("%RawSource26%") >> %avsFile% 
    @echo Crop(RawSource(".\renderOut\%video%_%%v_%%r_synth.yuv", %width%, %height%, "i420"), %cropLeft%, %cropTop%, %cropRight%, %cropBottom%) >> %avsFile% 
    %avs2yuv% %avsFile% -raw -o .\avsOut\%video%_%%v_%%r_synth_avs.yuv 
)))) 

REM del %avsFile% 

Моя командная строка:

C:\SAFAS\folder02>avs.bat 

C:\SAFAS\folder02>REM @echo off 

C:\SAFAS\folder02>set RawSource26=C:\_rawsource26\RawSource26.dll 

C:\SAFAS\folder02>set avsFile=.\temporary.avs 

C:\SAFAS\folder02>set avs2yuv=C:\_avs2yuv\avs2yuv.exe 

C:\SAFAS\folder02>set video=balloons 

C:\SAFAS\folder02>set views=1 2 3 4 5 

C:\SAFAS\folder02>set rates=1Mbps 2Mbps 3Mbps 4Mbps 5Mbps 

C:\SAFAS\folder02>set width=1024 

C:\SAFAS\folder02>set height=768 

C:\SAFAS\folder02>set cropLeft=72 

C:\SAFAS\folder02>set cropTop=0 

C:\SAFAS\folder02>set cropRight=0 

C:\SAFAS\folder02>set cropBottom=0 
72 was unexpected at this time. 
C:\SAFAS\folder02> @echo Crop(RawSource(".\renderOut\balloons_%v_synth.yuv", 1024, 768, "i420"), 72, 0, 0, 0) >> .\temporary.avs 
C:\SAFAS\folder02> 

ответ

2

) в ваших петель, которые на самом деле не «близко» но часть echo эс должны быть «спасся "- заменить затем на ^), в противном случае партия принимает необесцененный-) как close of block

+0

OK. Это сработало. Если бы избежать открывающих круглых скобок '^ (', которые не означают как «открытые»?), То хорошая практика? – engn

+0

Экранирование закрывающих круглых скобок, которые не подразумеваются как часть команды в моей партии, решило мою проблему. Также ускользание открывающих круглых скобок не часть команды ничего не сломала и означала, что они не являются частью команды. Я бы сказал, что ускользание открывающих круглых скобок является хорошей практикой. Спасибо. – engn

+0

Исключение открывающих круглых скобок, таких как '^ (' не нужно, но не наносит вреда ни , поэтому речь идет не о хорошей или плохой практике, это скорее вопрос личного вкуса ... – aschipfl

Смежные вопросы