NAME
while - Execute script repeatedly as long as a condition
is met
SYNOPSIS
while test body
_________________________________________________________________
DESCRIPTION
The while command evaluates test as an expression (in the
same way that expr evaluates its argument). The value of
the expression must a proper boolean value; if it is a
true value then body is executed by passing it to the Tcl
interpreter. Once body has been executed then test is
evaluated again, and the process repeats until eventually
test evaluates to a false boolean value. Continue com
mands may be executed inside body to terminate the current
iteration of the loop, and break commands may be executed
inside body to cause immediate termination of the while
command. The while command always returns an empty
string.
Note: test should almost always be enclosed in braces. If
not, variable substitutions will be made before the while
command starts executing, which means that variable
changes made by the loop body will not be considered in
the expression. This is likely to result in an infinite
loop. If test is enclosed in braces, variable substitu
tions are delayed until the expression is evaluated
(before each loop iteration), so changes in the variables
will be visible. For an example, try the following script
with and without the braces around $x<10:
set x 0
while {$x<10} {
puts "x is $x"
incr x
}
SEE ALSO
break(n), continue(n), for(n), foreach(n)
KEYWORDS
boolean value, loop, test, while
Man(1) output converted with
man2html