一、置换符号
1.变量置换 $
TCl解释器会将认为$后面为变量名,将变量名置换成它的值
2.命令置换 []
[]内是一个独立的TCL语句
3.反斜杠置换 \
换行符、空格、[、$等被TCL解释器当作特殊符号处理。加上反斜杠后变成普通字符
\t TAB
\n 换行符
4.双引号 “”
“”中$和[]符号会进行变量替换和命令替换
5.花括号 {}
{}所以特殊字符都将变成普通字符,即TCL解释器不会对其做任何特殊处理
6.井号 #
表示注释#
二、变量、数组和列表
1.变量
(1)定义:
set 变量名 变量值
(2)取值:
$变量名
2.数组
(1)定义:
set 数组名 (元素名) 值
(2)取值:
$数组名(元素名)
(3)array指令:
3.列表
列表是标量的有序集合
(1)定义:
set 列表名 {元素1 元素2 元素3}
(2)取值:
$列表名
(3)操作命令
concat 合并两个列表
lindex 选取列表某个元素 (从0开始计数)
llength 列表长度
lappend 在列表末尾追加元素
注意:
lsort 列表排序
语法格式:lsort 开关 列表
开关:缺省——默认ASCll码排序色图 -real——浮点数大小 -unique——唯一化,删除重复元素
三、运算
1.数学运算
+ - * /
2.逻辑运算
<= >= == !=
3.指令
expr 表达式
注意:若想进行浮点运算,需要将其中任意一个值写成浮点型
四、控制流
1.if
语法格式:
if {判断条件} {
脚本语句} elseif {判断条件} {
脚本语句} else {判断语句} {
脚本语句}
2.循环指令_1-foreach
(1)语法格式:
foreach 变量 列表 循环主体
(2)功能:
从第零个元素开始,每次按照顺序取得列表的一个元素,将其赋值给变量,然后执行主体一次,直到列表最后一个元素
3.循环控制指令-break
功能:结束循环
4.循环控制指令-continue
功能:仅结束本次循环
5.循环指令_2-while
(1)语法格式
while 判断语句 循环主体
(2)功能
如果判断语句成立,就运行脚本,直到不满足判断条件停止循环,此时while命令终中断并返回一个空字符串
6.循环指令_3-for
(1)语法格式
for 参数初始化 判断语句 重新初始化参数 循环主体
(2)功能