NAME
       if - Execute scripts conditionally

SYNOPSIS
       if  expr1  ?then?  body1  elseif  expr2  ?then? body2 elseif ... ?else?
       ?bodyN?


DESCRIPTION
       The if command evaluates expr1 as an expression (in the same  way  that
       expr  evaluates  its  argument).  The value of the expression must be a
       boolean (a numeric value, where 0 is false and anything is true,  or  a
       string  value  such as true or yes for true and false or no for false);
       if it is true then body1 is executed by passing it to  the  Tcl  inter-
       preter.   Otherwise  expr2  is  evaluated as an expression and if it is
       true then body2 is executed, and so on.  If  none  of  the  expressions
       evaluates  to true then bodyN is executed.  The then and else arguments
       are optional ``noise words'' to make the command easier to read.  There
       may be any number of elseif clauses, including zero.  BodyN may also be
       omitted as long as else is omitted too.  The return value from the com-
       mand  is  the  result of the body script that was executed, or an empty
       string if none of the expressions was non-zero and there was no  bodyN.

EXAMPLES
       A simple conditional:
              if {$vbl == 1} { puts "vbl is one" }

       With an else-clause:
              if {$vbl == 1} {
                 puts "vbl is one"
              } else {
                 puts "vbl is not one"
              }

       With an elseif-clause too:
              if {$vbl == 1} {
                 puts "vbl is one"
              } elseif {$vbl == 2} {
                 puts "vbl is two"
              } else {
                 puts "vbl is not one or two"
              }

       Remember,  expressions  can be multi-line, but in that case it can be a
       good idea to use the optional then keyword for clarity:
              if {
                 $vbl == 1 || $vbl == 2 || $vbl == 3
              } then {
                 puts "vbl is one, two or three"
              }


SEE ALSO
       expr(n), for(n), foreach(n)


KEYWORDS
