首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何从tclsh内部运行交互式shell (如"exec tclsh“)?

如何从tclsh内部运行交互式shell (如"exec tclsh“)?
EN

Stack Overflow用户
提问于 2016-01-21 07:57:33
回答 1查看 488关注 0票数 0

可以从tclsh内部运行一些交互式shell吗?显然,从bash内部运行交互式shell (如bash或tclsh )很容易,但我没有找到相反的方法。

如果在tclsh内部运行"exec tclsh“或"exec bash”,则在输入"exit“并单击enter之前不会收到提示,或者使用”ctrl“来杀死父tclsh。

如果可能的话,我宁愿不使用外部包。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-01-21 11:02:46

如果您不想将值(退出代码除外)传递回调用的Tcl代码,您可以很容易地通过重定向标准通道来实现这一点,这样Tcl就不会捕获它们:

代码语言:javascript
复制
exec tclsh <@stdin >@stdout 2>@stderr

这将适用于几乎所有的子进程(我刚刚用vi测试过它),如果它决定尝试运行子进程,那么tclsh实际上在交互模式下为您做了什么。

如果您想做任何比这更复杂的事情,您可能需要考虑使用Expect,否则会有一长串棘手的问题。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34918215

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档