要运行c程序,你可以这样做
bash> gcc test.c -o test
然后
bash> ./test
如何让test.c在另一个窗口中执行终端?
答案 0 :(得分:2)
xterm -e“./ test”
这将在新的xterm窗口中执行'test'。当然假设Linux。
答案 1 :(得分:2)
您可以分叉新进程并使用system()函数。这适用于大多数Linux发行版。只需检查终端属性即可知道执行新终端的命令。 “gnome-terminal”适合我(Ubuntu,Redhat)。
int main()
{
if(!fork())// child process
system("gnome-terminal");
else
{
//do rest of the things here in parent process......
}
}
在fork()之后,新的终端窗口将作为单独的进程打开。
答案 2 :(得分:0)
取决于您所使用的系统以及您所关注的终端,但如果您使用的是gnome(例如ubuntu),请按照以下步骤进行操作
gnome-terminal -x sh -c "./test"
如果您不希望在./test
完成后立即关闭窗口,则执行
gnome-terminal -x sh -c "./test; cat"
答案 3 :(得分:0)
您想要为新终端打开一个窗口,或者您想要做什么? 你的问题不是很清楚。
如果要运行某些命令,则需要处理sys调用以启动新进程。
在Windows上有system()函数,但我不确定它是否存在于Linux或其他posix系统上。
答案 4 :(得分:0)
根据您对terminal
这个词的使用,我猜你正在使用osx。
您可以使用AppleScript来获取行为:
tell application "Terminal"
activate
do script with command "cd _directory_; ./test"
end tell
如果您希望程序启动一个窗口,请让程序调用popen来启动命令[或写入临时文件并启动脚本]