gpt4 book ai didi

java - 如何从 Java 启动交互式命令行界面程序?

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:34:30 24 4
gpt4 key购买 nike

我有一个 Java 程序需要在前台启动交互式命令行界面 C 程序。我需要它在 Windows 和 Linux 中都能工作。

在 Windows 中,一切正常。我可以使用 cmd 在前台启动我的程序,如下所示:

command = "cmd /c start \"My_C_Program\" /MAX /WAIT My_C_Program ";
theProcess = Runtime.getRuntime().exec(command);

在 Linux 中,我无法对 /bin/bash 执行相同的操作。无论我尝试什么,该进程始终在后台运行:

String[] commands = { "/bin/bash", "-c", "./My_C_Program" };
theProcess = Runtime.getRuntime().exec(commands);

我知道我可以从后台进程中检索输出,但这没有用,因为该程序是交互式的。

如有任何帮助,我们将不胜感激。甚至精心设计的解决方法:)

最佳答案

你可以试试这个:

String[] commands = { "gnome-terminal", "-x", "-c", "./My_C_Program" };
theProcess = Runtime.getRuntime().exec(commands);

不确定它是否有效。没试过。

也许您没有 gnome-terminal,而是 x-term 之类的东西。应该差不多吧。

关于java - 如何从 Java 启动交互式命令行界面程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21809348/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com