2

私は Windows を使用しています。バット内でループを実行し、条件が満たされたときにループを解除したいのですが、gotoを使用したくありません。一般的な方法を教えてもらえますか? 私の場合、ファイルサイズが 200 KB を超えるまでループしたいので、バッチでファイルを作成し (時間とともに大きくなります)、200 KB を超える場合はループでサイズを確認します。ループを壊したい

4

1 に答える 1

3

残念ながら、バッチ スクリプト言語にはループがなく、あらかじめ決められた回数whileだけループするだけなので、残念ながら+しか選択肢がありません。バッチ内のステートメントを避けることに決めたのはなぜですか?forifgotogoto

do-while次のコードは、一般的なループに似ています。

:do_while_loop_start
rem This is the body of the loop (do something here...)

:do_while_loop_end
for /f "usebackq" %%a in ('somefile.txt') do set filesize=%%~za
if %filesize% leq 204800 goto do_while_loop_start

それは十分にエレガントではありませんか?それはそうですね。

于 2012-08-30T11:01:44.837 に答える