1 注释
注释符号是#或者;# 在命令后注释用;#,在行的开头两者都可以用
2 变量赋值
格式 set var value
set top “e907”
调用变量的时候,用${top}来调用
3 续行符号位 \
注意续行符号后面不能有字符
4 命令的置换
最外层的{} 不会进行置换操作
[]可以传递其中的命令结果,注意不能被{}包含
双引号包含的[]中的命令可以正常执行,命令结果也可以传递出来
{}包含的[]中的命令不会执行,更不会有命令结果出来
5 数字比较-IF应用
6 过程proc
格式 proc name args body
调用方法中的参数可以用花括号或者双引号包含,也可以不包含
过程的参数赋缺省值:proc name {arg1 {arg2 vlaue}}
过程的不确定个数的参数定义:proc name {arg1 args}
7 list结构
list结构下标是从零开始的,引用方式是lindex list 位置-1
foreach x $list:用以列出list中的所有项
list的曾删改
concat?arg1 arg2... argn 表示合并list
lappend listname? arg1 arg2... argn 在list后增加项
8 通配符
* 代表任意字符
?代表1个字符
[...] 代表一个集合
9 命令和变量是否存在-info
info的用法
1)判断是否存在该变量
info exists variname1
10 模块化
source
将一个程序分层多个文件
格式:source filename
读入文件并执行
11 创建命令 eval
在程序运行的过程中,tcl可以执行其中创建的命令
格式:eval arg1??arg2??
功能:将参数连接成一个字符串,传递给tcl_eval进行执行,并返回结果或错误码
12 unset
从解释器的名称空间删除一个变量
格式:unset variname1? variname2?
功能:从解释器的名称空间删除变量,如果变量名是个数组名,则整个数组被删掉,如果是数字中的某个项,则只删除那个项