打开新的终端窗口并执行命令
问题描述:
我一直在试图从我的应用程序中打开一个新的终端窗口,并在用户指定的第二个窗口上执行一个命令。我已经构建了一些调试软件,并且希望在单独的窗口上执行用户程序,以便我的调试输出不会与程序输出混合在一起。我正在使用fork()
和exec()
。我正在执行的命令是gnome-terminal -e 'the program to be executed'
。打开新的终端窗口并执行命令
我有2个问题:
调用
gnome-terminal
意味着用户必须运行Gnome图形环境。是否有更多的跨平台命令可用(我只对Linux机器感兴趣)?命令执行完第二个终端之后也结束执行和关闭。有什么办法可以暂停它,或者让它通过等待输入继续正常操作?
答
1)gnome-terminal应该在没有整个gnome环境的情况下合理地工作,反正老式的“xterm”就足够了。
2)您可以执行发射程序,并在最后一个短bash脚本读取一行:
的bash -c“我的计划...;阅读'
(或'xterm -e ...')
答
您可能想要类似xterm -hold
。