批量循环直到满足条件

时间:2012-08-30 09:57:03

标签: loops batch-file

我正在使用Windows,我想在一个蝙蝠内做一个循环并在条件满足时打破它,我不想使用 goto ,有人可以给我一般这样做的方法? 在我的情况下,我想循环,直到文件大小超过200 KB,所以在我的批处理我创建一个文件(随着时间变得越来越大),然后我想用循环检查它的大小 如果它大于200 KB我想打破循环

1 个答案:

答案 0 :(得分:3)

不幸的是,批处理脚本语言没有while循环,只有for循环具有预定的迭代次数,所以我担心if + goto是你唯一的选择。您为什么决定批量避免goto语句?

以下代码类似于常见的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

不够优雅吗?我想是的。