2015-04-07 69 views
0

我正尝试在Netbeans中使用Qt编写应用程序。我可以打开gnome终端(在Ubuntu中),但是我似乎无法得到一个命令在终端打开时执行,例如,执行'ls'命令。使用QProcess将命令写入gnome终端

任何人都可以帮助我一些代码来执行ls命令在gnome终端打开后?我打开终端用下面的代码:

QProcess *proc = new QProcess(this); 
proc->start("gnome-terminal"); 
if (!proc->waitForStarted()) { 

} 

回答

1

使用-e说法:

proc->start("gnome-terminal -e 'ls'"); 

为了保持窗口打开,去编辑>文件首选项>命令>当命令退出和变化到保持终端打开

+0

有没有办法将“-e ls”命令写入已经打开的终端?例如,如果我想打开终端,然后以分步方式编程执行一系列命令。 – user1145581

+0

不容易。您可以尝试直接写入shell或终端进程,如'echo'ls \ n“>/proc//fd/0',但我怀疑它会起作用。 – svlasov