Linux下TCL的基础使用记录一

简介:

TCL 全称 「 Tool Command Language 」,是一门脚本语言,执行依赖于解释器,广泛应用于各种EDA工具。
结构组成:命令 + 字符串 or command + command option
例:set a 1
首先安装就不说了,可以看下是否已经安装,进入交互界面

tclsh

可以进入说明安装,查看tclsh的版本,交互界面输入以下信息:
在这里插入图片描述

简单的运行实例:

文件:test.tcl

#!/usr/bin/env tclsh
set x 10
set y x+10
set z [expr $x+10]
puts "z=$z"
puts "y=$y"

直接运行

tclsh test.tcl

另一种运行:需要执行权限chmod +x test.tcl

./test.tcl

运行结果:
在这里插入图片描述

1.置换(substitution)

TCL提供三种形式的置换:变量置换、命令置换和反斜杠置换

变量置换由一个符号标记,变量置换会导致变量的值插入一个单词中。
例如:

%set x 10
%set y $x+100    

#y的值是10+100,这里x被置换成它的值10,整体为字符串,而不是得到110

命令置换是由**[ ]**括起来的TCL命令及其参数,命令置换会导致某一个命令的所有或部分单词被另一个命令的结果所代替。
%set y [expr $x+100]
y的值是110,这里当TCL解释器遇到字符’['时,它就会把随后的expr作为一个命令名,从而激活与expr对应的C/C++过程,并把’expr’和变量置换后得到的’10+110’传递给该命令过程进行处理。

反斜杠置换类似于C语言中反斜杠的用法,主要用于在单词符号中插入诸如换行符、空格、[、$等被TCL解释器当作特殊符号对待的字符。

除了使用反斜杠外,TCL提供另外两种方法来使得解释器把分隔符和置换符等特殊字符当作普通字符,而不作特殊处理,这就要使用双引号和花括号({ })
TCL解释器对双引号中的各种分隔符将不作处理,但是对换行符 及$和[ ]两种置换符会照常处理。例如:

%set x 100

100

%set y "$x ddd" 

100 ddd

而在花括号中,所有特殊字符都将成为普通字符,失去其特殊意义,TCL解释器不会对其作特殊处理。

%set y {/n$x [expr 10+100]} 

结果:

/n$x [expr 10+100]

2.变量

简单变量

变量名和变量值可以包含任何字符;TCL解释器会自动推断变量的类型。

% set  a  2
2
% set  a.1  3
3
% set  b  $a.1
2.1
% set  c  ${a.1}
3
数组变量:

在TCL中,不能单独声明一个数组,数组只能和数组元素一起声明。数组中,数组元素的名字包含两部分:数组名和数组中元素的名字,TCL中数组元素的名字(下标)可以为任何字符串。
例:

 set day(monday) 1
 set day(tuesday) 2

第一个命令生成一个名为day的数组,同时在数组中生成一个名为monday的数组元素,并把值置为1,第二个命令生成一个名为tuesday的数组元素,并把值置为2。

#!/bin/usr/env tclsh

set a monday
set day(monday) 1
set b $day(monday)
set c $day($a)
puts $a
puts $b
puts $c

结果:

monday
1
1

  • 2
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

勇敢凡凡

xixixi

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值