通信人家园
标题:
TCL语言培训教程(华为)
[查看完整版帖子]
[打印本页]
时间:
2008-9-3 08:46
作者:
ccdata
标题:
TCL语言培训教程(华为)
tcl语言培训教程,希望能够对大家有所帮助
TCL(Tool Command Language)是一种解释执行的脚本语言(Scripting Language)。 它提供了通用的编程能力:支持变量、过程和控制结构;同时TCL还拥有一个功能强大的固有的核心命令集。
由于TCL的解释器是用一个C\C++语言的过程库实现的,因此在某种意义上我们又可以把TCL看作一个C库,这个库中有丰富的用于扩展TCL命令的C\C++过程和函数,可以很容易就在C\C++应用程序中嵌入TCL,而且每个应用程序都可以根据自己的需要对TCL语言进行扩展。我们可以针对某一特定应用领域对TCL语言的核心命令集进行扩展,加入适合于自己的应用领域的扩展命令,如果需要,甚至可以加入新的控制结构,TCL解释器将把扩展命令和扩展控制结构与固有命令和固有控制结构同等看待。扩展后的TCL语言将可以继承TCL 核心部分的所有功能,包括核心命令、控制结构、数据类型、对过程的支持等。根据需要,我们甚至可以屏蔽掉TCL的某些固有命令和固有控制结构。通过对TCL的扩展、继承或屏蔽,用户用不着象平时定义一种计算机语言那样对词法、语法、语义、语用等各方面加以定义,就可以方便的为自己的应用领域提供一种功能完备的脚本语言。
TCL良好的可扩展性使得它能很好地适应产品测试的需要,测试任务常常会由于设计和需求的改变而迅速改变,往往让测试人员疲于应付。利用TCL的可扩展性,测试人员就可以迅速继承多种新技术,并针对产品新特点迅速推出扩展TCL命令集,以用于产品的测试中,可以较容易跟上设计需求的变化。
另外,因为TCL是一种比C\C++ 语言有着更高抽象层次的语言,使用TCL可以在一种更高的层次上编写程序,它屏蔽掉了编写C\C++程序时必须涉及到的一些较为烦琐的细节,可以大大地提高开发测试例的速度。而且, 使用TCL语言写的测试例脚本,即使作了修改,也用不着重新编译就可以调用TCL解释器直接执行。可以省却不少时间。
TCL 目前已成为自动测试中事实上的标准。
目 录
1引言 6
2语法 7
2.1脚本、命令和单词符号 7
2.2置换(substitution) 7
2.2.1变量置换(variable subtitution) 8
2.2.2命令置换(command substitution) 8
2.2.3反斜杠置换(backslash substitution) 8
2.2.4双引号和花括号 9
2.3注释 9
3变量 10
3.1简单变量 10
3.2数组 11
3.3相关命令 11
3.3.1set 11
3.3.2unset 11
3.3.3append和incr 12
4表达式 12
4.1操作数 12
4.2运算符和优先级 12
4.3数学函数 13
5List 14
5.1list命令 14
5.2concat命令: 14
5.3lindex命令 15
5.4llength命令 15
5.5linsert命令 15
5.6lreplace命令: 15
5.7lrange 命令: 15
5.8lappend命令: 15
5.9lsearch 命令: 16
5.10lsort命令: 16
5.11split命令: 16
5.12join命令 17
6控制流 17
6.1if命令 17
6.2循环命令:while 、for、 foreach 17
6.2.1while命令 17
6.2.2for命令 18
6.2.3foreach命令 18
6.2.4break和continue命令 19
6.2.5switch 命令 19
6.1eval命令 19
6.2source命令 19
7过程(procedure) 20
7.1过程定义和返回值 20
7.2局部变量和全局变量 20
7.3缺省参数和可变个数参数 21
7.4引用:upvar 21
8字符串操作 22
8.1format命令 22
8.2scan命令 23
8.3regexp命令 23
8.4regsub命令 25
8.5string命令 25
8.5.1string compare ?-nocase? ?-length int? string1 string2 25
8.5.2string equal ?-nocase? ?-length int? string1 string2 25
8.5.3string first string1 string2 ?startindex? 26
8.5.4string index string charIndex 26
8.5.5string last string1 string2 ?startindex? 26
8.5.6string length string 26
8.5.7string match ?-nocase? pattern string 26
8.5.8string range string first last 27
8.5.9string repeat string count 27
8.5.10string replace string first last ?newstring? 27
8.5.11string tolower string ?first? ?last? 27
8.5.12string toupper string ?first? ?last? 27
8.5.13 string trim string ?chars? 27
8.5.14string trimleft string ?chars? 27
8.5.15string trimright string ?chars? 27
9文件访问 28
9.1文件名 28
9.2基本文件输入输出命令 28
9.3随机文件访问 29
9.4 当前工作目录 30
9.5文件操作和获取文件信息 30
10错误和异常 33
10.1错误 33
10.2从TCL脚本中产生错误 34
10.3使用catch捕获错误 35
10.4其他异常 35
11深入TCL 37
11.1查询数组中的元素 37
11.2 info命令 38
11.2.1变量信息 38
11.2.2过程信息 39
11.2.3命令信息 40
11.2.4 TCL的版本和库 41
11.2.5 命令的执行时间 41
11.2.6 跟踪变量 41
11.2.7 命令的重命名和删除 43
11.2.8 unknown命令 44
11.2.9自动加载 44
12历史记录 45
13TCL和C\C++ 47
13.1生成自己的TCLSH 48
13.2扩展自己的命令:方法(一) 48
13.2.1编写扩展命令对应的C/C++过程 48
13.2.2注册命令 49
13.2.3命令返回值和命令对应的过程的返回值 50
13.3扩展自己的命令:方法(二) 52
13.3.1Tcl_Obj结构 52
13.3.2编写扩展命令对应的C/C++过程 54
13.3.3注册命令 54
13.4利用clientData参数和deleteProc参数 55
13.5在C/C++应用程序中嵌入TCL 58
14总结 59
[
本帖最后由 tomtuo 于 2008-9-3 09:13 编辑
]
时间:
2008-9-3 09:55
作者:
GregoryL
谢谢分享。
时间:
2009-2-25 20:41
作者:
moming08
谢谢分享。
时间:
2009-2-25 22:49
作者:
hxmluck
谢啦
时间:
2009-4-2 16:33
作者:
fowler4810
标题:
华为还真做了不少贡献哦
:)
时间:
2009-5-5 22:05
作者:
xiaozhao2009
谢谢楼主,真有用的!
时间:
2009-5-6 14:35
作者:
pp3512318
谢谢分享
时间:
2009-5-19 12:59
作者:
danny_li_99
真不错,谢谢啊.
时间:
2009-6-13 23:22
作者:
slayer114
太好了。星期天好好研究研究!谢谢!
时间:
2009-6-13 23:26
作者:
slayer114
华为的内部资料实际上有很多,只是安全工作挺到位,基本上公网上很少见到!
时间:
2009-6-20 10:22
作者:
feigederen
谢谢哈
时间:
2009-6-26 10:01
作者:
kbskip
谢谢分享。
时间:
2009-8-5 17:03
作者:
zbzhangliang
谢谢啦
时间:
2009-8-13 14:54
作者:
lypsh
谢谢。。。。。。
时间:
2009-8-31 11:17
作者:
fly.f
十分感谢
时间:
2009-9-4 00:07
作者:
tonytwain
很经典的TCL教程,非常好!
时间:
2009-9-10 10:36
作者:
xpxu
标题:
谢谢楼主
谢谢分享
时间:
2009-10-21 09:56
作者:
telnetpig
thanks
时间:
2009-10-23 21:24
作者:
潘晓晨
好好看看什么东西
时间:
2009-10-25 16:40
作者:
bajiebeishang
挺不错的资料,谢谢楼主了,好好学习了回去
时间:
2009-10-26 15:11
作者:
monlone
感谢之中。找了好久。
时间:
2009-10-26 17:22
作者:
无声
网上找不到好的编译器,华为好像自己开发了一个,用着不错,谁能提供下?
时间:
2009-11-2 20:29
作者:
szcydj
支持支持~~
时间:
2009-11-22 08:18
作者:
yangyang009
标题:
好久不用TCL,最近正好用到,熟悉的HW培训资料啊,谢谢楼主分享
好久不用TCL,最近正好用到,熟悉的HW培训资料啊,谢谢楼主分享
时间:
2009-11-24 21:30
作者:
tony_200x
和我们用的差不多
时间:
2009-12-1 22:37
作者:
gzbj
宝贝,下载了,空时好好研究一下,最后还得感谢楼主!慷慨!
时间:
2009-12-2 17:55
作者:
javenceyds
标题:
回复 1# 的帖子
Thank you very much!
时间:
2009-12-26 17:03
作者:
look_tfq
下过了,很有用的资料,谢谢了
时间:
2009-12-26 23:20
作者:
yangfan197987
谢谢分享。
时间:
2009-12-28 11:40
作者:
51lovebuy
谢谢了,非常需要!
http://www.51lvoebuy.com
时间:
2009-12-29 11:51
作者:
21moons
楼主辛苦了!
时间:
2009-12-29 16:01
作者:
tjdlbj
好东西,多谢楼主!
时间:
2009-12-29 22:18
作者:
qyhj09
tcl难不难哟?
时间:
2010-1-9 22:59
作者:
gaoxinhy
标题:
谢谢
谢谢分享
时间:
2010-1-11 09:53
作者:
sun3789536
很不错,很感谢
时间:
2010-1-12 14:58
作者:
lijunsu37
好资料,值得欣赏,学习之中!
时间:
2010-1-14 00:03
作者:
wangdudu1111
标题:
很不错
挺不错的资料,谢谢楼主了!
时间:
2010-1-16 19:35
作者:
jy3006
找了好久,谢谢了
时间:
2010-1-28 10:18
作者:
23c
:) 感谢楼主分享,太棒了
时间:
2010-3-10 09:53
作者:
lightking
感谢楼主的分享
时间:
2010-3-19 10:59
作者:
gaohouzhi
标题:
EXCELLENT 非常好
这个东西很解渴,
附件:
20090627_a275f8e50ea25de8d468OAWCaNO6AOQy.jpg
(2010-3-19 10:59, 27.72 KB) / 下载次数 3
https://www.txrjy.com/forum.php?mod=attachment&aid=ODUyMDh8ZGExYjM5YmF8MTc1MjkwOTE5MnwwfDA%3D
时间:
2010-3-19 11:02
作者:
jlqsczw
谢谢分享。
时间:
2010-3-23 14:56
作者:
wenqi1129
Thanks!
时间:
2010-3-24 11:40
作者:
router123456
标题:
回复 1# 的帖子
看看,好像下载不了
时间:
2010-3-25 16:52
作者:
cloudxj
can't download
时间:
2010-3-30 02:34
作者:
吾行行天
THK you
时间:
2010-4-8 16:56
作者:
nionman
谢谢分享!
时间:
2010-5-4 15:35
作者:
snihpl
非常感谢共享
时间:
2010-6-10 22:02
作者:
yd_yxl
标题:
谢谢分享!!!
时间:
2010-6-17 14:00
作者:
bgcelite
标题:
回复 1# 的帖子
谢谢分享。
时间:
2010-7-2 13:52
作者:
npfc
very very thks~!
时间:
2010-7-17 18:39
作者:
7451
谢谢分享~~~
时间:
2010-7-19 10:50
作者:
lingbox
很详细的教程,,谢谢。。
时间:
2010-7-19 13:08
作者:
wn31665
计划学这个,下来看看,谢谢
时间:
2010-7-19 13:25
作者:
zqhziee
好东西
收了
时间:
2010-8-2 16:54
作者:
vincentyyl
LZ太好了。谢谢分享!
时间:
2010-8-17 08:53
作者:
lhj344512431
好资料 顶起来
时间:
2010-8-18 00:56
作者:
一池幽荷
多谢分享,谢谢
时间:
2010-8-30 09:19
作者:
王丹华
标题:
很好的资料
时间:
2010-9-5 21:52
作者:
danzi
很好的资料,谢谢LZ的分享啊~~
时间:
2010-9-6 08:53
作者:
skyofhh
标题:
回复 2# 的帖子
ding
时间:
2010-9-7 17:10
作者:
gp601
谢谢分享。
时间:
2010-9-8 12:53
作者:
虾米注鸡血
thanks!
时间:
2010-10-2 14:43
作者:
phoenixmy
不错,要下载下来看看
时间:
2010-10-27 11:38
作者:
hentje
Thanks。。。。。
时间:
2010-11-6 10:02
作者:
cuggoat
呵呵,现在正在找这个,谢谢了
时间:
2010-11-6 10:05
作者:
cuggoat
呵呵,现在正在找这个,谢谢了
时间:
2010-11-6 13:17
作者:
netentsec
多谢分享
时间:
2010-11-6 21:49
作者:
加号
标题:
回复 1# 的帖子
thank you for the sharing.
时间:
2010-11-8 11:20
作者:
jftt
多谢分享
时间:
2010-12-5 14:04
作者:
timhanxu
加油加油加油加油加油加油加油加油加油加油
时间:
2010-12-23 10:50
作者:
daiqr12345
谢谢分享
时间:
2010-12-30 17:20
作者:
rfhn163com
谢谢
时间:
2010-12-30 17:32
作者:
hkp000
好资料!
谢谢分享
时间:
2011-1-4 14:34
作者:
yfwd1439
华为的内部资料实际上有很多,只是安全工作挺到位,基本上公网上很少见到!
时间:
2011-1-6 11:32
作者:
shaiyyt
太好了 顶
时间:
2011-1-6 13:59
作者:
zhyf1901
标题:
回复 1# 的帖子
谢谢分享
时间:
2011-1-6 17:32
作者:
yzlworld
谢谢楼主,真有用的!
时间:
2011-1-6 23:10
作者:
wwwjy2000
thank!
时间:
2011-1-9 01:02
作者:
慕容小郭
帮助太大了,3Q
时间:
2011-1-11 15:07
作者:
fionaxa
谢谢!学习~~~~
时间:
2011-1-11 15:29
作者:
threetree3676
thank you !
时间:
2011-1-11 17:11
作者:
sailorone
谢谢分享
时间:
2011-1-12 12:41
作者:
huadong
谢谢分享
时间:
2011-1-14 13:34
作者:
flymidy
很好~
时间:
2011-1-19 12:02
作者:
mynewyear
标题:
特意注册了号
最近在找TCL的教程。朋友推荐了这个。下载了好好钻研下。
时间:
2011-1-19 15:04
作者:
mzyuandan
谢谢楼主1
时间:
2011-1-19 20:19
作者:
wistmmz
谢谢楼主,真有用的
时间:
2011-1-20 13:05
作者:
playking2009
标题:
谢谢lz分享,下来看下
时间:
2011-1-21 11:14
作者:
geminidy
多谢!小弟正在学习,相信能起很大作用!
时间:
2011-1-21 11:32
作者:
hkp000
谢谢分享
时间:
2011-1-24 16:11
作者:
llx88217
谢谢分享
时间:
2011-1-24 16:34
作者:
latinpig
谢谢分享。
时间:
2011-1-25 17:18
作者:
dong_xg
就是来学这个的
时间:
2011-1-27 22:51
作者:
song_bit
多谢分享.....
时间:
2011-1-28 21:34
作者:
hp116
十分感谢
时间:
2011-1-29 13:57
作者:
y2001szl
谢谢,多谢。^_^。正准备学习
时间:
2011-2-11 20:26
作者:
richardsong
这是个好东西
时间:
2011-2-20 17:56
作者:
qamoin
强大的 顶
时间:
2011-2-22 00:02
作者:
aabble
好东西啊,谢谢`分享
通信人家园 (https://www.txrjy.com/)
Powered by C114