目录

第一个TCL程序

注释

标识符

Tcl空格

Tcl命令

命令替换

变量替换

反斜杠替换


TCL 是相当简单易学,让我们开始创建第一个Tcl程序!

第一个TCL程序

让我们写一个简单的Tcl程序。所有的Tcl文件都以.tcl为扩展名。所以,把下面的源代码在 test.tcl 文件中。

#!/usr/bin/tclsh

puts "Hello, World!" 

假设,TCL环境设置正确;让我们切换到文件所在的目录,然后运行该程序:

$ tclsh test.tcl

我们会得到下面的输出。

Hello, World!

现在,让我们来看看Tcl程序的基本结构,因此,这可以了解Tcl语言的基本构建块。在TCL,我们使用新的行或分号终止代码前行。但分号不是必要的,如果使用的是每一个命令(即一个换行)。

注释

注释就像帮助文本在Tcl程序,解释器忽略它们。注释可以使用hash_(#)在开始写入。

#!/usr/bin/tclsh

# my first program in Tcl
puts "Hello World!" 

多行或者块注释使用,如果条件为0。一个例子如下所示。

#!/usr/bin/tclsh

if 0 {
my first program in Tcl program
Its very simple
}
puts "Hello World! welcome to yiibai.com" 

行内注释使用;#。下面给出一个例子。

#!/usr/bin/tclsh

puts "Hello World!" ;# my first print in Tcl program

标识符

一个Tcl标识符是用来标识变量,函数,或任何其它用户定义的项目的名称。一个标识符开始以字母A到Z或a〜z或后跟零个或多个字母下划线(_),下划线,美元($)和数字(0〜9)。

TCL不允许标点字符,如@和%标识符。TCL是大小写敏感的语言。因此Manpower 和manpower 在Tcl是两个不同的标识符。这里是可接受的标识符的一些例子:

mohd       zara    abc   move_name  a_123
myname50   _temp   j     a23b9      retVal

Tcl空格

仅包含空格,可能与注释行,被称为一个空行和Tcl解释完全忽略它。

空白格是Tcl中用来描述空格,制表符,换行符和注释的术语。空格分开一声明中的一个组成部分,使解释器来识别,其中在声明一个元件,如puts, ends和下一个元素开始。因此,在下面的语句:

#!/usr/bin/tclsh

puts "Hello World!" 

必须有puts和之间“Hello World!”至少一个空白字符(通常是一个空格),以便解释器能够区分它们。另一方面,在下面的语句

#!/usr/bin/tclsh

puts [expr 3 + 2] ;# print sum of the 3 and 2

有时不需要空格在字符之间,如3和+之间,或+和2也没有必要(可以不用),虽然是自由的,如果想为便于阅读,包括一些空白格。

Tcl命令

Tcl命令实际上是词语的列表,使用要执行表示该命令的第一个字。接下来的单词代表参数。为了组单词组成单一的参数,随函多个单词可使用“”或{}。

Tcl命令的语法如下:

commandName argument1 argument2 ... argumentN

让我们来看看Tcl命令的一个简单的例子。

#!/usr/bin/tclsh

puts "Hello, world!"

当上述代码被执行时,它会产生以下结果。

Hello, world!

在上面的代码中,提出的是Tcl命令和“Hello World”的是参数1。正如前面所说,我们用“”组成两个词。

让我们来看看Tcl命令的另一个例子使用两个参数。

#!/usr/bin/tclsh

puts stdout "Hello, world!"

当上述代码被执行时,它会产生以下结果。

Hello, world!

在上面的代码中,puts 是Tcl命令,stdout是参数1 以及“Hello World”参数2。在这里,标准输出使得在标准输出设备打印的程序。

命令替换

在命令替换,方括号是用来计算在方括号中的脚本。

一个简单的例子,两个数字相加如下所示。

#!/usr/bin/tclsh

puts [expr 1 + 6 + 9]

当上述代码被执行时,它会产生以下结果。

16

变量替换

在变量替换,$使用在变量名之前,这将返回该变量的内容。

一个简单的例子为一个值设置为变量并打印如下所示。

#!/usr/bin/tclsh

set a 3
puts $a

当上述代码被执行时,它会产生以下结果。

3

反斜杠替换

这些通常被称为转义序列,每个反斜线后跟有自己的含义字母。

一个简单的例子换行符替换如下所示。

#!/usr/bin/tclsh

puts "Hello\nWorld"

当上述代码被执行时,它会产生以下结果。

Hello
World

转载自:Tcl命令