1
下記の私のバッチファイルは、指定されたパラメータリストのための.avsファイルを作成し、この.avsファイルを引数としてとり、これをforループで複数回実行するプログラムを実行します。私のWindowsのバッチは言う: "72は今回は予期せぬものでした。"
バッチファイルを実行すると、72 is unexpected at this time.
と表示されます。72
は、パラメータの1つの値です。 .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%
私のコマンドプロンプト:実際に「近い」ものではなく、echo
ESの一部は、「エスケープする必要があなたのループ内
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>
としてOKです。出来た。 – engn
私のバッチでコマンドの一部ではない閉じ括弧をエスケープすると、私の問題が解決されました。また、カッコが開いていてもエスケープしています。 – engn
'^('のような開始括弧をエスケープすることは必要ではありませんが、どちらにも害はありません。 、それは良いか悪い練習の問題ではない、それはより個人的な味の問題です... – aschipfl