如何使Tcl解释器源文件并同时从shell命令打开管道?

时间:2013-01-29 11:27:24

标签: tcl tk

有没有办法让Tcl解释器源文件并且从shell命令并行打开管道?

更详细地说,我有一个从tcl / tk构建的GUI。我希望我的tcl脚本为GUI变量提供设置文件,同时从 [tclsh setting_file] 打开一个管道,将输出重定向到我的GUI标准输出。

非常感谢!

1 个答案:

答案 0 :(得分:2)

我不相信在子进程中运行settings命令的处理是个好主意。也许safe interpreter会更好吗?

重新捕获输出,您可以pick a technique for doing stdout capture然后在GUI中显示捕获的缓冲区的内容(如果您正在使用我的解决方案来解决该问题,请使用encoding convertfrom来获取字符)但是你有一个普遍的问题,即如果需要很长时间才能运行,用户代码可能会阻塞。你可以 通过使用线程来解决这个问题,但我怀疑它更容易避免复杂性,只是让编写错误的设置代码导致用户必须解决的问题。 (catch命令可以帮助您在获取设置文件期间从任何直接错误中恢复。)