社区
C语言
帖子详情
用c如何打开一个终端?当然不是execl("gnome-terminal")
iamwjp
2008-11-26 09:20:24
用c如何打开一个终端?当然不是execl("gnome-terminal")
我的守护进程希望在后台运行,被守护进程希望在终端运行,可以printf,puts,当在fork()==0后调用execl("gnome-termianl", "-x", "myapp", NULL)后守护进程wait返回,所以希望可以用一个不用gnome-terminal的方式打开一个可供输出终端。
多谢指教。
...全文
386
15
打赏
收藏
用c如何打开一个终端?当然不是execl("gnome-terminal")
用c如何打开一个终端?当然不是execl("gnome-terminal") 我的守护进程希望在后台运行,被守护进程希望在终端运行,可以printf,puts,当在fork()==0后调用execl("gnome-termianl", "-x", "myapp", NULL)后守护进程wait返回,所以希望可以用一个不用gnome-terminal的方式打开一个可供输出终端。 多谢指教。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
15 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
Wolf0403
2008-12-05
打赏
举报
回复
标准解决方法是手工重定向,而不是让程序自己弹出一个 gnome-terminal 来。不是所有环境都有 X 和 Gnome 的。
快乐田伯光
2008-12-04
打赏
举报
回复
直接open终端文件就可得到文件句柄啊,再用dup就可以重定向标准输入输出了, 但这样做有意义吗?
xiaoshao_0_0
2008-11-30
打赏
举报
回复
那就用重定向的方法,把程序的输出都接受过来,显示到什么东西上面就好了阿。
redtin
2008-11-30
打赏
举报
回复
LZ是想在图形界面弹出个窗口显示输出而已。
帮顶了
iamwjp
2008-11-29
打赏
举报
回复
不是要隐藏进程,我是要一个独立的terminal
iamwjp
2008-11-28
打赏
举报
回复
说的这么明白还不清楚,看来得提高我的表达能力了,代码只是写个大概的意思
我的app想新开一个终端,在里面printf,而不是在启动终端里面一直挂着
要是还不明白,就没辙了
mifeixq
2008-11-28
打赏
举报
回复
对deamon没有研究过,不过看apue说,一个deamon进程需要很多步骤
父进程退出
设置会话ID
设置umask(0)
转/目录
等等,记不太清楚了
LZ说的意思我不是很明白 不过看你写的,你是在子进程里打开一个终端,我不清楚你想要什么,不过
execl()需要指定path的
execl("/usr/bin/xterm", "xterm", (char *)0);
iamwjp
2008-11-28
打赏
举报
回复
int main()
{
pid_t pid;
pid = fork();
if(pid>0)
{
wait(NULL);//当子进程是以gonme-terminal启动的应用时,会立即返回,直接启动其他应用则会等待
}
else if(pid==0)
{
execl("gnome-terminal", "-x", "myapp", NULL);
}
return 0;
}
就呆在云上
2008-11-28
打赏
举报
回复
那就写入文件,你再看看撒
或者重定向
xhs_lh04
2008-11-28
打赏
举报
回复
主要是不明白你的意图,不好说什么.UP吧
yingge
2008-11-28
打赏
举报
回复
随便回回,没太看懂你的意思
是在一个进程中fork然后执行你的"被守护进程??"吗?
那这个"被守护进程??"不是本来就在终端中吗,继承下来的啊...
z_ming2005
2008-11-28
打赏
举报
回复
linux C 隐藏进程
Longinc
2008-11-26
打赏
举报
回复
帮顶
spofmy
2008-11-26
打赏
举报
回复
没搞过,帮顶
WingForce
2008-11-26
打赏
举报
回复
http://wangcong.org/blog/?p=423
虽然偶不是很懂linux,但是Google。。。
tty、pty和pts在Linux系统中是与
终端
相关的概念,它们扮演着不同的角色并具有一些区别。在本文中,我们将详细介绍这些概念,并提供相应的源代码示例。
在现代的Linux系统中,tty通常代表虚拟
终端
,用户可以通过
终端
模拟器(如
GNOME
Terminal
、Konsole等)或通过Ctrl+Alt+F1至F6切换到不同的虚拟
终端
。综上所述,tty代表物理或虚拟
终端
设备,pty是伪
终端
,用于模拟真实...
2. Linux进程(记录)
2. Linux进程 perror ()函数的功能是打印
一个
系统错误信息。 当程序的当前函数(这类函数包括系统函数和库函数)出现错误,会将错误值保存在errno这个全局变量中,然后当程序执行到perror ()函数的时候,会先打印...
进程
定义:
一个
其中运行着
一个
或者多个线程的地址空间和这些线程所需要的系统资源 2.进程的结构 如果有两个用户neil和rick,他们同时运行grep程序在不同的文件中查找不同的字符串。 如果在搜索结束之前运行ps -ef ...
操作系统:实验二 进程控制
实验二 进程控制 16281002 杜永坤 计科1601 实验题目:根据课堂所学内容和基础知识介绍,完成实验题目。 1、
打开
一个
vi进程。通过ps命令以及选择合适的参数,只...先
打开
一个
终端
输入vi 回车 进入到如下界面: ...
《Linux程序设计》--读书笔记---第十三章进程间通信:管道
我们通常是把
一个
进程的输出通过管道连接到另
一个
进程的输入; 对shell命令来说,命令的连接是通过管道字符来完成的; cmd1 | cmd2 shell负责安排两个命令的标准输入和标准输出 cmd1的标准输入来自键盘 cmd1的...
C语言
69,371
社区成员
243,080
社区内容
发帖
与我相关
我的任务
C语言
C语言相关问题讨论
复制链接
扫一扫
分享
社区描述
C语言相关问题讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章