0

複数の画像ファイルを処理するバッチファイルを作成しようとしています。

ファイルの名前は P_1316_0001.png P_1316_0002.png P_1316_0003.png などです。LETs sqy P_1316 is VARSESSION) ImageMagick プログラムのおかげで、バッチで直接画像を変換できます。

基本的に私がやりたいことは:

フォルダー内に変換するファイルがなくなるまでインクリメントする変数を作成します。i が 0001 であると仮定して、ファイルを png から jpg に変換します (%VARSESSION% %i%.png %VARSESSION% %i%.jpg を変換します)。

あなたが私を助けてくれることを願っています。感謝します

ダニエル

4

1 に答える 1

1

質問には少し制限がありますが、指定した正確なパラメーターに合わせて、

SETLOCAL ENABLEDELAYEDEXPANSION
for /l %%i in (10001,1,19999) do (
 set numb=%%i
 ECHO if exist %varsession%_!numb:~1!.png convert %varsession%_!numb:~1!.png %varsession%_!numb:~1!.jpg
)
ENDLOCAL

しかし、次のようなはるかに優れた方法があります。

for /f %%i in ('dir /b /a-d %varsession%_*.png') do (
ECHO convert %%i %%~ni.jpg
)

%varsession%_*.png に一致するすべてのファイルが処理されると仮定します。

注: キーワード ECHO は、バッチが実行することを提案するものを表示するために挿入されました。ECHO実際にアクションを実行するには、 を削除します

于 2013-04-04T09:54:06.157 に答える