2011-03-24 314 views
1

我一直在試圖從我的應用程序中打開一個新的終端窗口,並在用戶指定的第二個窗口上執行一個命令。我已經構建了一些調試軟件,並且希望在單獨的窗口上執行用戶程序,以便我的調試輸出不會與程序輸出混合在一起。我正在使用fork()exec()。我正在執行的命令是gnome-terminal -e 'the program to be executed'打開新的終端窗口並執行命令

我有2個問題:

  1. 調用gnome-terminal意味着用戶必須運行Gnome圖形環境。是否有更多的跨平臺命令可用(我只對Linux機器感興趣)?

  2. 命令執行完第二個終端之後也結束執行和關閉。有什麼辦法可以暫停它,或者讓它通過等待輸入繼續正常操作?

回答

3

1)gnome-terminal應該在沒有整個gnome環境的情況下合理地工作,反正老式的「xterm」就足夠了。

2)您可以執行發射程序,並在最後一個短bash腳本讀取一行:

的bash -c「我的計劃...;閱讀'

(或'xterm -e ...')

4

您可能想要類似xterm -hold