【问题标题】:How to disable a modified tclsh interpreter interactive mode?如何禁用修改后的 tclsh 解释器交互模式?
【发布时间】:2013-06-19 08:40:31
【问题描述】:

在没有任何 tcl 文件的情况下运行 tclsh 命令,解释器将进入交互模式。

我可以通过修改 tclsh 源代码来简单地禁用此功能吗?

【问题讨论】:

    标签: tcl interpreter interactive-mode tclsh


    【解决方案1】:

    鉴于提供 any 脚本文件将关闭交互模式,我无法想象您为什么要费心这样做。您提供的脚本将可以完全访问传入的附加参数(全局 argv 变量中的列表)和标准 IO 通道(stdinstdoutstderr)。完成后可以exit。从字面上看,您想要的任何事情都可以在那时完成;您只需要编写一个脚本即可。

    如果您在自己的程序中包含 Tcl,tclsh 的行为在 C 函数 Tcl_Main 中实现。如果你从不调用它——而只是使用Tcl_FindExecutableTcl_CreateInterpTcl_Eval/Tcl_EvalFile——那么你永远不会得到任何那种交互行为。虽然理论上你可以修改 Tcl 源代码本身来做你想做的事——它都是开源的——当你一开始就不调用那个代码时你为什么还要麻烦呢?

    【讨论】:

      猜你喜欢
      • 2015-06-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-10-18
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多