Groovysh 启动交互式命令

Groovysh 启动交互式命令

我使用 groovysh 作为 bash 的替代品。有件事我无法开始工作。假设我想做一些操作然后启动 vim。在 bash 中执行此操作就像编写 一样简单vim file.txt。当我使用 groovysh 运行 bash 命令时,我通常会这样做"command args".execute().text或类似的操作。但它只是执行程序并等待输出,而不向命令提供任何输入

使用 groovysh 时,有没有办法将控制权交给 vim(或 ssh、top 等)等交互式程序

答案1

文档用于execute指向ProcessBuilder

我在 groovysh 中尝试过这个

pb = new java.lang.ProcessBuilder("vim")
pb.inheritIO()
p = pb.start()

但我最终得到了 groovysh 和 vim 的极其混乱的混合体,两者都试图通过相同的输入进行控制。

不知道如何让 vim 进程在前台运行。

相关内容