【发布时间】:2020-02-21 23:19:29
【问题描述】:
我现在正在处理TCL 脚本。当我运行 tclsh script.tcl 时,脚本运行良好,但当我运行 source script.tcl 时,不再找到命令。
#!/usr/bin/env tclsh
proc test {} {
set a 43
set b 27
set c [expr $a + $b]
set d [expr [expr $a - $b]* $c]
for {set k 0} {$k < 10} {incr k} {
if {$k < 5} {
puts "k<5, pow=[expr pow($d,$k)]"
} else {
puts "k>=5, mod=[expr $d % $k]"
}
}
}
...运行时会导致错误:
$ source myfirst.tcl
Command 'proc, not found, did you mean:
command 'croc' from snap croc (6.4.10)
command 'prof' from deb profphd
command 'nproc' from deb coreutils
command 'proj' from deb proj-bin
See 'snap info <snapname>' for additional versions.
bash: myfirst.tcl: line 7: syntax error near undexpected token `k'
【问题讨论】:
-
Why not upload images of code on SO when asking a question? -- 未包含在问题本身的内容不计入minimal reproducible example 页面中描述的“完整”标准帮助中心。
-
具体来说:有人无法从屏幕截图中复制并粘贴代码来自己测试,或者进行一些更改并测试这些更改是否能修复您的错误。并且仅在屏幕截图中的内容不会被搜索引擎索引,因此其他人无法找到问题并从其解决方案中学习。
-
...该 URL 具有误导性(这里没有反对意见,因为我只是通过自己转录图像来解决问题),但另请参阅 idownvotedbecau.se/imageofcode 的进一步解释
-
ns2 : 可执行文件
ns是 "OTcl" 解释器,所以你可以省略第一行 =#!/usr/bin/env tclsh