我最近一直在玩 expect,但我一直想不出如何对传入的变量执行简单的加法运算。有人知道该怎么做吗?另外,Expect 是否有合适的在线引用资料?我尝试使用谷歌搜索,结果非常有限。
最佳答案
关于 Expect 需要记住的一点是,它实际上只是 Tcl 的扩展,所以如果您正在寻求有关编写 Expect 脚本的帮助并且您的问题与 Expect 特定命令之一无关,您应该尝试查看Tcl 引用资料。一个好的起点是 http://www.tcl.tk ,以及 http://wiki.tcl.tk .
有两种方法可以完成您想要做的事情:incr
和 expr
。 incr
可以在您将一个整数值与另一个整数相加时使用。该操作非常快。例如:
set value 1
incr value
但是,incr
不适用于非整数值,它只能做加法(如果您对增量取反则不能做减法,如 incr value -1
)。如果你需要更详细的东西,你应该使用 expr
:
set value 1
set value [expr {$value + 1}]
注意在表达式周围使用大括号!虽然它们通常不是正确操作所必需的,但它们可以提高性能。如果您正在进行许多算术运算,在表达式周围使用大括号将显着提高脚本的性能。有关详细信息,请参阅 http://wiki.tcl.tk/10225 .在使用 expr
时,您应该养成始终支撑您的表达式的习惯。
您可以在 http://wiki.tcl.tk/201 找到多个 Expect 资源的链接。 .
关于tcl - 期待补充,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/706947/