Tcl编程初步,python怎么换行

换行 1

Tcl编程初步 编辑版本日期著者 :1.5:2004-3-2:陈涛 上海贝尔阿尔卡特有限公司 Tcl编程初步 总目录 总目录...............................................................................................................................................


I 例索引.............................................................................................................................................

IV 表索引.............................................................................................................................................

VI 图索引............................................................................................................................................

VII 第1章.TCL基本知识................................................................................................................


1 1.1什么是TCL..............................................................................................................................11.2TCL自学工具...........................................................................................................................11.3TCL软件包..............................................................................................................................21.4TCL命令格式...........................................................................................................................21.5TCL脚本文件和SOURCE命令..................................................................................................31.6可执行脚本文件(EXECUTABLEFILE)...........................................................................................31.7获得帮助.................................................................................................................................4 1.7.1Windows系统.............................................................................................................41.7.2Unix系统......................................................................................................................4 第2章.输出、赋值与替换........................................................................................................


5 2.1PUTS.........................................................................................................................................5 2.2SET&UNSET..............................................................................................................................5 2.3替换........................................................................................................................................6 2.3.1$...................................................................................................................................6 2.3.22.3.3 []..................................................................................................................................6""和{}..........................................................................................................................6 2.3.4\...................................................................................................................................7 第3章.数学表达式与EXPR命令..............................................................................................


8 3.1数学和逻辑运算符..................................................................................................................83.2数学函数.................................................................................................................................83.3数学运算举例.........................................................................................................................93.4INCR命令................................................................................................................................9 第4章.字符串........................................................................................................................

10 4.1基本命令集...........................................................................................................................104.2APPEND命令..........................................................................................................................104.3FORMAT命令..........................................................................................................................10 4.3.1format命令说明......................................................................................................

104.3.2format举例..............................................................................................................

114.4SCAN命令.............................................................................................................................124.5BINARY命令...........................................................................................................................134.6SUBST命令..............................................................................................................................144.7STRING命令...........................................................................................................................154.7.1string命令列表.........................................................................................................

154.7.2字符串比较................................................................................................................

164.7.3stringmatch字符串匹配.........................................................................................

164.7.4字符串替换................................................................................................................

184.7.5字符类别(class)测试.................................................................................................

184.7.6字符串映射................................................................................................................

19 i Tcl编程初步 第5章.TCL列表操作..............................................................................................................

20 5.1列表命令集...........................................................................................................................205.2LIST命令.................................................................................................................................205.3CONCAT命令.........................................................................................................................215.4LAPPEND命令........................................................................................................................215.5LLENGTH命令.........................................................................................................................225.6LINDEX命令............................................................................................................................225.7LRANGE命令..........................................................................................................................225.8LINSERT和LREPLACE命令........................................................................................................225.9LSEARCH命令.........................................................................................................................235.10LSORT命令.............................................................................................................................245.11JOIN与SPLIT命令...................................................................................................................245.12FOREACH控制结构................................................................................................................27 第6章.数组............................................................................................................................

28 6.1数组的定义与格式................................................................................................................286.2数组变量...............................................................................................................................296.3多维数组...............................................................................................................................296.4数组操作命令.......................................................................................................................30 6.4.1arrayget命令.........................................................................................................

306.4.2arraynames命令....................................................................................................

306.4.3遍历数组...................................................................................................................

316.4.4用数组定义结构........................................................................................................

31 第7章.控制结构命令.............................................................................................................

32 7.1IF/ELSE命令............................................................................................................................327.2FOR命令................................................................................................................................337.3WHILE命令.............................................................................................................................337.4BREAK与CONTINUE命令........................................................................................................347.5SWITCH命令...........................................................................................................................347.6CATCH命令...........................................................................................................................357.7ERROR命令............................................................................................................................367.8RETURN命令...........................................................................................................................377.9EXIT命令................................................................................................................................37 第8章.过程与作用域.............................................................................................................

38 8.1PROC—过程定义命令...........................................................................................................388.2作用域...................................................................................................................................40 8.2.1过程的作用域............................................................................................................

408.2.2变量的作用域............................................................................................................

408.3UPVAR命令............................................................................................................................428.4RENAME命令.........................................................................................................................448.5特殊变量...............................................................................................................................458.5.1命令行参数................................................................................................................

458.5.2env--环境变量数组...................................................................................................

458.6EVAL命令..............................................................................................................................468.7UPLEVEL命令..........................................................................................................................48 第9章.正则表达式(REGULAREXPRESSIONS)...................................................................49 9.1REGEXP命令..........................................................................................................................499.2REGSUB命令...........................................................................................................................519.3正则表达式的语法................................................................................................................52 ii Tcl编程初步 9.3.19.3.2 9.3.2.19.3.2.29.3.2.39.3.2.49.3.2.59.3.2.69.3.2.79.3.2.8 9.3.3 9.3.3.19.3.3.29.3.3.39.3.3.49.3.3.59.3.3.69.3.3.79.3.3.89.3.3.99.3.3.109.3.3.11 9.3.49.3.5 分支(branch)和原子(atom)....................................................................................

52基本语法...................................................................................................................

52 匹配字符........................................................................................................................................

52限定匹配........................................................................................................................................

53方括号表达式与字符集.................................................................................................................53匹配分支........................................................................................................................................

54量词(Qulifier)...........................................................................................................................54子模式与匹配报告捕获.................................................................................................................55反斜杠引用....................................................................................................................................

56匹配优先级....................................................................................................................................

56 高级正则表达式(AREs).........................................................................................

57 反斜杠换码(escape)序列............................................................................................................

57归整元素(collatingelement).....................................................................................................57等价类(equivalenceclass)........................................................................................................58字符类(characterclass).............................................................................................................58非贪婪量词....................................................................................................................................

59约束量词........................................................................................................................................

59回退引用........................................................................................................................................

59前瞻(lookahead).........................................................................................................................

60换行符敏感的匹配.........................................................................................................................

60 嵌入式选项...............................................................................................................................60扩展语法...................................................................................................................................60 语法小结...................................................................................................................

60其它支持正则表达式的命令......................................................................................60 第10章. 名字空间.................................................................................................................

62 10.1创建名字空间...................................................................................................................62 10.2用::限定符来使用变量和过程...........................................................................................62 10.3名字空间的变量...............................................................................................................63 10.4过程的进口与出口............................................................................................................64 10.5 内省(INTROSPECTION).........................................................................................................65 10.6名字空间命令集...............................................................................................................65 第11章. 跟踪与调试.............................................................................................................

67 11.1CLOCK命令...........................................................................................................................6711.1.1clockclicks命令......................................................................................................

6711.1.2clockseconds命令................................................................................................

6711.1.3clockformat命令...................................................................................................

6811.1.4clockscan命令.......................................................................................................

70 11.2INFO命令...............................................................................................................................71 11.2.1infolevel..................................................................................................................

7211.2.2infoexists.................................................................................................................

7211.3TRACE命令............................................................................................................................73 11.3.1tracevariable.........................................................................................................

7311.3.2tracevdelete..........................................................................................................

7511.3.3tracevinfo...............................................................................................................

75 第12章. 脚本库与软件包......................................................................................................

76 12.112.1.112.1.212.1.312.1.412.1.5 声明和使用软件包............................................................................................................76软件包定位................................................................................................................

76声明软件包命令........................................................................................................

76加载软件包命令........................................................................................................

76自动加载与软件包索引.............................................................................................

77用链接库提供软件包.................................................................................................

79 iii Tcl编程初步 12.2PACKAGE命令集...................................................................................................................8012.3小结..................................................................................................................................80 第13章. 文件操作与程序调用...............................................................................................

81 13.1文件操作...........................................................................................................................81 13.1.1文件I/O....................................................................................................................

81 13.1.2文件系统信息命令.....................................................................................................

82 13.1.2.1 glob命令.................................................................................................................................83 13.1.2.2 file命令集.................................................................................................................................83 13.2程序调用...........................................................................................................................85 13.2.1用open命令打开一个进程管道..............................................................................85 13.2.2用exec命令调用程序..............................................................................................

87 13.2.3pid命令....................................................................................................................

88 第14章. 套接字与事件驱动编程简介....................................................................................

89 14.1套接字编程.......................................................................................................................89 14.1.1socket命令..............................................................................................................

89 14.1.1.1 Client端socket命令..............................................................................................................89 14.1.1.2 Server端socket命令选项......................................................................................................90 14.1.2用fconfigure配置套接字........................................................................................90 14.1.3C/S编程举例............................................................................................................

90 14.2事件驱动编程...................................................................................................................93 14.2.1after命令.................................................................................................................

93 14.2.2fileevent命令..........................................................................................................

96 14.2.3vwait命令................................................................................................................

96 14.2.4fconfigure命令.......................................................................................................

97 14.2.4.1 fconfigure语法.......................................................................................................................97 14.2.4.2 非阻塞I/O................................................................................................................................98 14.2.4.3 缓冲..........................................................................................................................................98 参考文献......................................................................................................................................

100 例索引 例1-1输出一段字符串的例子........................................................................................................

2例1-2source命令的简单例子......................................................................................................

3例2-1输出一个词的例子...............................................................................................................

5例2-2参数定义、赋值与参数值引用.............................................................................................

5例2-3嵌套$用做替换操作.............................................................................................................

6例2-4命令替换[]的例子...............................................................................................................

6例2-5{}替换的例子........................................................................................................................

6例2-6\的例子................................................................................................................................

7例2-7不规范的续行......................................................................................................................

7例3-1数学运算举例.......................................................................................................................

9例4-1append命令的简单例子.................................................................................................

10例4-2位置说明符的例子.............................................................................................................

11例4-3format命令的简单例子....................................................................................................

11例4-4scan命令的简单例子.......................................................................................................

12例4-5体验binaryformat和binaryscan的作用....................................................................13例4-6binary命令的简单应用.....................................................................................................

14例4-7subst命令的简单例子.......................................................................................................

14例4-8pare和stringequal进行字符串比较的例子...............................................16 iv Tcl编程初步 例4-9字符串替换简单例子..........................................................................................................

18例5-1使用list命令创建列表.......................................................................................................

20例5-2concat命令的例子..........................................................................................................

21例5-3lappend命令简单例子....................................................................................................

21例5-4llength命令的一个简单例子............................................................................................

22例5-5lindex命令的一个简单例子..............................................................................................

22例5-6linsert和lreplace命令的例子..........................................................................................22例5-7lsearch命令的简单例子...................................................................................................

23例5-8lsearch与lreplace结合删除列表元素...........................................................................23例5-9lsort命令简单的例子.........................................................................................................

24例5-10split命令例子..................................................................................................................

24例5-11空元素与独立字符元素的split例子................................................................................24例5-12用ldel删除指定元素.......................................................................................................

25例5-13根据步长调整MAC地址值...........................................................................................

25例5-14foreach的简单例子:依次打印列表元素.....................................................................27例5-15具有多个值列表的foreach命令处理过程.....................................................................27例6-1认识数组............................................................................................................................

28例6-2混淆普通变量和数组时的错误例子...................................................................................29例6-3通过替换间接使用数组变量..............................................................................................

29例6-4数组和列表互换................................................................................................................

30例6-5arraynames的简单例子.................................................................................................

31例6-6遍历数组的一个方法举例..................................................................................................

31例6-7用数组来定义结构.............................................................................................................

31例7-1if/else控制命令的简单例子...........................................................................................

32例7-2一个for循环...................................................................................................................

33例7-3while循环的例子..............................................................................................................

34例7-4switch命令的简单例子.....................................................................................................

34例7-5switch语句中不当注释引起的错误...............................................................................35例7-6用catch捕获命令错误信息.............................................................................................

35例7-7error命令的例子...............................................................................................................

36例7-8用return命令从过程中返回.............................................................................................

37例8-1带有默认参数的过程定义..................................................................................................

38例8-2不定输入参数过程的例子..................................................................................................

39例8-3参数名+参数值成对输入的过程定义.................................................................................39例8-4过程的定义........................................................................................................................

40例8-5变量的作用域.....................................................................................................................

40例8-6全局变量与局部变量的关系..............................................................................................

41例8-7用”::”来声明全局变量........................................................................................................

41例8-8upvar命令的例子.............................................................................................................

42例8-9通过upvar命令来传递数组.............................................................................................

44例8-10用rename命令来取消一个命令....................................................................................

44例8-11打印命令行参数信息.......................................................................................................

45例8-12用eval创建新命令的简单例子......................................................................................46例8-13动态定义过程...................................................................................................................

47例8-14uplevel的简单例子........................................................................................................

48例9-1regexp的简单例子...........................................................................................................

50例9-2用regsub进行字符串替换的简单例子............................................................................51例9-3匹配挂靠的简单例子.........................................................................................................

53例9-4字符集匹配的例子.............................................................................................................

53例9-5使用量词*和?
不当引起的错误...........................................................................................

55 v Tcl编程初步 例9-6子模式捕获.........................................................................................................................

55例9-7屏蔽子模式报告.................................................................................................................

55例9-8子模式综合运用的例子:搜索脚本文件中定义的过程.....................................................55例9-9归整元素匹配字符串.........................................................................................................

58例9-10字符类的简单例子...........................................................................................................

58例10-1定义名字空间Counter:..................................................................................................

62例10-2动态定义名字空间...........................................................................................................

62例10-3限定名比较的简单例子....................................................................................................

63例10-4名字空间自动处理引用变量的归属.................................................................................64例10-5过程的进口与出口的简单例子........................................................................................64例10-6namespaceorigin命令例子........................................................................................65例11-1计算系统时钟滴答数........................................................................................................

67例11-2clockformat在windows上的简单例子.......................................................................69例11-3Tcl识别的系统编码方式..................................................................................................

69例11-4消除clockformat输出中的乱码..................................................................................70例11-5用info测试变量是否存在...............................................................................................

71例11-6用infolevel命令控制过程的循环嵌套..........................................................................72例11-7用tracevariable跟踪变量的简单例子........................................................................73例11-8tracevinfo的例子.........................................................................................................

75例12-1auto_path的内容与操作...............................................................................................

76例12-2pkg_mkIndex命令.........................................................................................................

77例12-3简单的软件包加载的例子................................................................................................

78例13-1用open命令打开文件,并输入数据.............................................................................82例13-2lstat和stat命令举例......................................................................................................

84例13-3用open命令打开只读进程管道...................................................................................86例13-4用open命令打开进程管道又一例.................................................................................

86例13-5用exec处理管道与I/O重定向.....................................................................................87例13-6用pid命令检查进程ID...................................................................................................

88例14-1基于socket实现的C/S(Client/Server)简单模型.........................................................90例14-2after命令的简单应用.....................................................................................................

94例14-3vwait命令的简单例子.....................................................................................................

97 表索引 表3-1数学与逻辑运算符...............................................................................................................

8表3-2数学函数..............................................................................................................................

8表4-1比较有用的字符串操作命令..............................................................................................

10表4-2格式转换符........................................................................................................................

11表4-3格式标志符........................................................................................................................

11表4-4二进制转换类型.................................................................................................................

13表4-5string命令.........................................................................................................................

15表4-6使用stringmatch来匹配字符的结构..............................................................................16表4-7字符类名目........................................................................................................................

18表5-1列表相关命令.....................................................................................................................

20表6-1数组操作命令表.................................................................................................................

30表9-1regexp选项.......................................................................................................................

50表9-2AREs的换码表...................................................................................................................

57表10-1namespace命令............................................................................................................

65表11-1clock命令.......................................................................................................................

67表11-2clockformat的域描述符...............................................................................................

68 vi Tcl编程初步表11-3clockformat特定于UNIX系统的域描述符..................................................................68表11-4info命令集......................................................................................................................

71表12-1pkg_mkIndex命令开关选项..........................................................................................

77表12-2package命令................................................................................................................

80表13-1文件操作命令...................................................................................................................

81表13-2open命令的acess变量说明........................................................................................81表13-3file命令集........................................................................................................................

83表13-4filestat命令数组元素.....................................................................................................

85表13-5重定向指示标识和说明....................................................................................................

88表14-1after命令........................................................................................................................

93表14-2fconfigure控制的I/O通道属性....................................................................................98 图索引 图1TclTour界面............................................................................................................................

1图2启动Tcl交互界面....................................................................................................................

2图3交互界面..................................................................................................................................

2图4启动Windows上的TclHelp.................................................................................................

4图5使用在另外一个Tcl文件中的过程.......................................................................................39图6regexp匹配过程示意图.......................................................................................................

50图7文件访问控制权限说明.........................................................................................................

82图8进程管道................................................................................................................................

85图9C/S界面................................................................................................................................

标签: #邮箱 #cdr #平局 #雷暴 #csgo #枪法 #宝箱 #上有