打开新的终端窗口并执行命令

问题描述:

我一直在试图从我的应用程序中打开一个新的终端窗口,并在用户指定的第二个窗口上执行一个命令。我已经构建了一些调试软件,并且希望在单独的窗口上执行用户程序,以便我的调试输出不会与程序输出混合在一起。我正在使用fork()exec()。我正在执行的命令是gnome-terminal -e 'the program to be executed'打开新的终端窗口并执行命令

我有2个问题:

  1. 调用gnome-terminal意味着用户必须运行Gnome图形环境。是否有更多的跨平台命令可用(我只对Linux机器感兴趣)?

  2. 命令执行完第二个终端之后也结束执行和关闭。有什么办法可以暂停它,或者让它通过等待输入继续正常操作?

1)gnome-terminal应该在没有整个gnome环境的情况下合理地工作,反正老式的“xterm”就足够了。

2)您可以执行发射程序,并在最后一个短bash脚本读取一行:

的bash -c“我的计划...;阅读'

(或'xterm -e ...')

您可能想要类似xterm -hold