do
Iteration command
Usage
do <command> while (<condition>)
Description
Executes <command> once then evaluates the <condition>. If <condition> evaluates to true (non zero result) then repeats the execution again.
<command> may be either a single command or a block of commands.
It can contain the break command: in that case the execution of the <command> will be immediately interrupted and the control transferred to the command following this while block.
It is valid for <command> to be an empty command terminated with a ';'. <condition> is an expression as the ones evaluated by $(*) with the following extensions:
If <condition> is a string, its length is evaluated: in this way a non-empty string causes the <condition> to be true, an empty string causes it to be false.
If <condition> is an array, its size is evaluated: in this way a non-empty array causes the <condition> to be true, an empty array causes it to be false.
If <condition> is a hash, the number of its entries is evaluated: in this way a non-empty hash causes the <condition> to be true, an empty hash causes it to be false.
Examples

%i = 0;
do %i++; while(%i < 100);
echo "After first execution: %i";
%i = 10
do
{
    echo "Executed!";
    %i++;
}
while(%i < 1)
echo "After second execution: %i";
See also
while

Index, Commands