ChinaUnix.net
相关文章推荐:

popen 会阻塞吗

...................

by baohuaihuai - C/C++ - 2007-09-25 18:30:40 阅读(1606) 回复(1)

相关讨论

APUE第2版406页说 每次调用popen时,应当记住所创建子进程的ID 请问,怎么得到这个子进程ID的? 有些人推荐用fork+execl,但是我要在这个管道里传输一些指令,所以就选择了popen

by marco_hxj - C/C++ - 2009-06-04 10:14:01 阅读(4821) 回复(8)

一个命令os.system()可以正常执行 但用os.popen()时就中途退出 也没有出错信息的 注:该命令有大量的标准输出和出错输出,不是交互的命令 请问是为什么啊

by rwen2012 - Python - 2007-08-31 22:34:47 阅读(2922) 回复(3)

在程序中如何更换目录操作?我用popen("cd bin","r"),却得不到想要的结果

by ShareThought - Solaris - 2007-06-22 22:43:11 阅读(1276) 回复(2)

解决了一个以前没有解决的问题 我原来在这里问过一个问题,调用SHELL的时候,如何获得SHELL的返回值 上次没有人回答,现在我自己解决了。估计有好多人想知道答案,所以在这里公布一下 方法就是 FILE * popen( const char*, const char* )函数 管道函数 两个参数,第一个是要执行的SHELL,第二个是文件打开属性,一般用 " r " 就足够了 函数返回一个FILE 指针。然后可以用读取文件的方法读取返回值!!! 欲知...

by net_robber - C/C++ - 2006-04-18 08:48:15 阅读(2014) 回复(4)

在一线程A里执行play_fp = popen(t_cmd, "w");//t_cmd是一个外部程序B 然后在另外一线程C里执行fwrite(pause_cmd, sizeof(char), strlen(pause_cmd), play_fp);//pause_cmd=“q”; 问题是这样,如果在fwrite后面加fclose(play_fp ),外部程序B能接受到“q”,但是c线程的fclose之后的代码就不执行了 如果不加fclose(play_fp ),外部程序B就不能接受到Q,但是线程C fclose()之后的代码是能执行的 [ 本帖最后由 marco_hxj 于 200...

by marco_hxj - C/C++ - 2009-03-05 18:38:14 阅读(999) 回复(0)

int status; fp = popen("xxxx", "r"); if(fp == NULL) { printf("popen failed errno=%d", errno); //如果popen是因为fork或者pipe调用失败的话,errno也被fork/pipe设置 }else { while(fgets(line, sizeof(line), fp)) { //读取命令的标准输出,注意没有标准出错,如果需要的话,我想命令可以写成 xxx 2>&1 } status = pclose(fp); if(status == -1) { //pclose失败了,一般来说错误是ECHILD,这是...

by shiwudao - HP文档中心 - 2008-04-20 19:40:00 阅读(1688) 回复(0)

要用c 寫管道 用人教我用 popen() ..... 可是如果我要 execv 的是 自己寫的 file....用 popen() 怎麼實現... popen("../bin/list -i"); 請問這句能實現嗎?

by takyeyu - C/C++ - 2008-04-14 09:03:57 阅读(1485) 回复(2)

windows xp 系统 import os s = os.popen('dir c:\\') for i in s: print i 无任何输出。在另一台机器上就没问题。cmd中运行 dir c:\ 正常。

by xue-feng - Python - 2007-08-20 11:52:18 阅读(2508) 回复(3)

我用popen打开一个执行很长时间的命令,用管道来读取命令的返回结果,有超时问题呢? char *ret=(char *)malloc(255);memset(ret,0,255); FILE *fp ; if ((fp = popen(rsh,"r"))==NULL) return ; while(fgets(ret,255,fp) != NULL) { strcat(m_strReport,ret); memset(ret,0,255); } (void)pclose(fp); free(ret); 注意:m_strReport是一个全局char *变量,rsh是执行的命令,这个命令需要点时间。上段代码的功能...

by arenxl - C/C++ - 2007-03-21 11:06:52 阅读(2671) 回复(1)

遇到个popen的问题 用popen打开了一个程序abc 如果abc不结束就不能从popen得到abc的输出 请问这怎么解决呢 [code] #!/usr/bin/env python import os a,b = os.popen2('/tmp/abc') print b.read() [/code] abc.c [code] int main() { while(1) { sleep(1); printf("yes\n"); } } [/code]

by bleem1998 - Python - 2007-03-07 09:27:25 阅读(5403) 回复(9)