Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1478106
  • 博文数量: 246
  • 博客积分: 3353
  • 博客等级: 中校
  • 技术积分: 3295
  • 用 户 组: 普通用户
  • 注册时间: 2011-11-09 17:56
个人简介

精通测试技术,linux,shell,性能测试

文章分类

全部博文(246)

文章存档

2024年(3)

2023年(7)

2022年(7)

2021年(4)

2020年(1)

2019年(2)

2017年(2)

2016年(3)

2015年(11)

2014年(20)

2013年(10)

2012年(176)

分类: Python/Ruby

2012-06-05 22:41:57

1  TCL中命令的赋值分为置换和赋值两个步骤

2  续行符为 \

3  转义符同为 \

4  特殊字符列表:

序号

字符

输出

十六进制

1

\a

响铃

\x07

2

\b

回车

\x08

3

\f

清屏

\x0c

4

\n

换行

\x0a

5

\r

回车

\x0d

6

\t

制表符

\x09

7

\v

垂直制表符(Vertical Tab)

\x0b

8

\ddd

八进制值

d=0-7

9

\xhh

十六进制值

h=0-9,A-F,a-f

最外层是 {} 则不会进行置换操作,但其中的续行符仍然有效

puts "$Z_LABEL $Z"      ;# 显示The Capitol of New York is:  Albany

puts {$Z_LABEL $Z}      ;# 显示 $Z_LABEL $Z,没有进行置换,大花括号中不会置换

puts {Who said, "What this country needs is a good $Z cigar!"?} ;#最外层是花括号,所以没有进行置换

 

puts {There are no substitutions done within braces \n \r \x0a \f \v}  ;#

puts {But, the escaped newline at the end of a\

string is still evaluated as a space}                        ;#续行符仍然生效

 

1   [ ] 可以传递其中的命令结果,注意不能被 {} 包含;

2  双引号包含的 [ ] 中的命令可以正常执行,命令结果也可以传出;

3  {} 包含的 [ ] 中的命令不会执行,更不会有命令结果传出来。

set x "abc"

puts "A simple substitution: $x\n"  ;#显示abc

 

set y [set x "def"]               ;#先执行[]中的命令,将”def”赋值给x,然后将该命令的结果赋值给y

puts "Remember that set returns the new value of the variable: X: $x Y: $y\n"    ;#显示xy都是def

 

set z {[set x "This is a string within quotes within braces"]}  ;#由于在{},所以并没有执行对x的赋值,只是将{}赋值给z

puts "Note the curly braces: $z\n"

 

set a "[set x {This is a string within braces within quotes}]"   ;#执行了对x的赋值操作,并将值传出来赋给了a

puts "See how the set is executed: $a"

puts "\$x is: $x\n"

 

set b "\[set y {This is a string within braces within quotes}]" #赋一个字符串用大花括号

puts "Note the \\ escapes the bracket:\n \$b is: $b"

puts "\$y is: $y"

 

 

 

 

 

 

 

阅读(1621) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~