If {条件表达式1}
{

执行语句1

} elseif {条件表达式2}
{

执行语句2

} elseif {条件表达式3}
{

执行语句3

} else
{

执行语句4

}

注:elseif
{条件表达式}为可选

示例:

错误格式:

if
{$x<0}

{

set
x 0

}

正确格式:

if {$x<0} {set x 0}
(不推荐)

if
{$x<0} {

set x
0

}

脚本:

set x
2

set y
3

if
{$x<$y} {

puts
"x is less than y"

}

运行结果:

switch 匹配模式(可选) 字符串 模式1 对应的tcl脚本1 模式2(可选)对应的tcl脚本2 ...
default对应的tcl脚本

匹配模式:1、-exact 精确匹配模式(默认模式)

2、-glob 字符串匹配模式

3、-regexp 正则表达式匹配模式

switch匹配模式(可选) 字符串 {

模式1 对应的tcl脚本1

模式2 对应的tcl脚本2

....

模式N 对应的tcl脚本N

default
对应的tcl脚本

}

脚本示例1:

set x
7

set y
7

switch $x
\

$y {puts
"X=Y"} \

{[0-9]} {puts
"<10"} \

default {puts
">10"}

运行结果:

脚本示例2:

set x
7

switch -glob
$x {

"1"
{puts "one"}

"2"
{puts "two"}

"3"
{puts "three"}

"$y"
{puts "X=Y"}

{[4-9]}
{puts "greater than 3"}

default
{puts "Not a value bettwen 1 and 9"}

}

执行结果:

示例脚本3:

puts "Who
recorded 'Mr Tambourine Man'"

gets stdin
artist

switch
$artist {

{Bob
Dylan} -

{Judy
Collins} -

{Glen
Campbell} -

{The
Byrds} {

puts
"$artist recorded 'Mr Tambourine Man'"

}

default
{

puts
"$artist probably recorded 'Mr Tambourine Man'"

}

}

运行结果:

注:模式 -这样的形式表示这个模式和下一个模式执行相同的tcl语句

最新文章

  1. 了解PHP中的register_shutdown_funcion
  2. big-endian和little-endian
  3. CTO干点啥?
  4. 在apache中设置访问目录后进入的默认页面为index.php
  5. SQL中插入单引号,新增修改删除
  6. Python正则表达式学习摘要及资料
  7. margin负值
  8. c++中字符串处理函数
  9. NSDictionary 使用总结
  10. Output\TEST.sct(7): error: L6236E: No section matches selector - no section to be FIRST/LAST.
  11. ffdshow 源代码分析 7: libavcodec视频解码器类(TvideoCodecLibavcodec)
  12. win10传奇手册CHM打开无法阅读解决
  13. 二十九、Linux 进程与信号——minishell(2)
  14. 数据集是 seq 文件的处理办法
  15. [转载]DevOps建立全生命周期管理
  16. 华为MSTP负载均衡配置示例
  17. linux服务-ssh
  18. Java打包可执行jar包 包含外部文件
  19. Oracle 对比两张表不一样 的数据
  20. 【bzoj1774-过路费】floyd+排序

热门文章

  1. Python进阶(十五)----面向对象之~继承(单继承,多继承MRO算法)
  2. 解决vue-cli项目开发中跨域问题
  3. 升级tinyhttpd-0.1.0,让其支持网页显示图像
  4. 【等待事件】等待事件系列(3+4)--System IO(控制文件)+日志类等待
  5. Flink Runtime核心机制剖析(转)
  6. Qt编译出错 GL/gl.h:No such file or directory
  7. python连接mysql服务端
  8. Linux命令——pidof
  9. pyecharts绘制geo地图
  10. 《The One 团队》:第九次团队作业:BETA冲刺与团队项目验收