初学TCL,问个很弱的问题
#!/usr/bin/tclsh
set x [gets stdin];
puts $x;
这个脚本在windows下运行报下面的错:
Result is: can not find channel named "stdin"
while executing
"gets stdin"
invoked from within
"set x [gets stdin]"
但是在linux运行是没有问题的,windows下用tcl是不是还要注意什么呢??
[解决办法]
Script.NET是一个IDE环境,没有对Tcl的stdin标准输入进行重载,所以在Script.NET下面是不支持涉及标准输入的命令的,不过如果为了学习的话,其实可以把需要输入的地方直接在脚本中进行赋值,避免执行过程中输入。
Script.NET的tcl文档库中带有tcl的一个中文教程,对tcl的语法、标准命令等都有说明,其中也有一些例子,可以参考。