当前位置:  技术问答>linux和unix

C++ 中有没有类似的 popen

    来源: 互联网  发布时间:2017-01-07

    本文导语:   popen 是C的函数,返回 FILE* 指针, 实现执行一个命令 并 把 该命令的输出结果从定向到 FILE* 指向的文件里。  那 C++ 有没有相应类似的函数 ,实现 执行一个 linux 命令,并把输出结果 重定向到 一个 I/O...

 popen 是C的函数,返回 FILE* 指针, 实现执行一个命令 并 把 该命令的输出结果从定向到 FILE* 指向的文件里。

 那 C++ 有没有相应类似的函数 ,实现 执行一个 linux 命令,并把输出结果 重定向到 一个 I/O 流。。就像 ifstream 打开文件

 得到 I/O 流?而不是得到FILE*, 我觉得 对 C++ 中I/O 流的 操作 更好用些。

|



Linux下 C++开发实际上就是C++ 结合 Linux C. 由于Linux系统api以及接口都是使用C语言实现的。

所以C++编程过程中一般都是遇到Linux特定的工作,比如你说的执行命令,都还是使用的C++内部封装C。

标准C++没有平台相关。

|
你非要用fstream做,办法如下:

步骤:

1,父进程open一个pid.txt文件,描述符n,直接Unlink pid.txt。
2,fork子进程,子进程dup2(n,STDOUT_FILENO),execl /bin/bash sh -c cmd .
3, 父进程wait子进程退出。
5,父进程fstream(pid.txt); 就可以读了。
6, 读完之后父进程close(n),父进程stream.close();
7,父进程退出,Unlink此时删除文件。

|
你需要用c++封装下 popen 之类的函数,可在 juliantec maillist 中提问。

    
 
 

您可能感兴趣的文章:

  • 有没有用c++写驱动的?
  • 请问,在Linux和Unix下,有没有像Borland C++ 3.1 for DOS或Visual C++ 6.0这样的开发工具?
  • 急!急!急!急!急!如何在Linux下编译运行C++程序。有没有这方便的入门文章或教材,
  • java中有没有象c++里的inline这个指令?
  • c++在unix中如何实现CString的方法?或者说有没有替换CString的类?
  • linux下类似于msdn的c++函数手册有没有?
  • 各位仁兄贤弟:Java Applet 有没有可能嵌入 C++ 应用程序?应该如何做?谢谢
  • 有没有人做过JNI,我要在C++中调用java类方法,那个javai.dll在那里啊?(重分向谢!)
  • 请问Linux下C++编程有没有类似WSAEventSelect的异步模型
  • UNIX上C++编程有没有什么类似msdn的帮助手册?
  • 想学习linux下的C++开发,大家有没有好的例子推荐一下!
  • 有谁在linux下用c++读mysql数据库啊!有没有例子让小弟参考啊!急!!!!
  • 这里有没有在LINUX下用C++开发的???
  • 请问在JAVA中有没有提供对C或C++接口的访问
  • 如何在UNIX的C编程中使用类似VC里面的TRACE宏?或者有没有类似功能?
  • JAVA里有没有类似SLEEP的函数?
  • Linux有没有类似bat文件,如何编写。
  • 服务器是linux系统,windows怎么共享上网?有没有类似sygate之类的软件?
  • JAVA中有没有类似VB中IIF的方法
  • jsp中有没有类似与asp中的response.end的语句。
  • unix系统有没有本地数据库?类似windows下的access
  • java有没有类似msdn的帮助文档?叫什么名称?在那里下载?
  • 有没有类似msdn的linux的帮助文件
  • 大家有没有做过类似在线应聘这样的jsp?
  • 网络技术 iis7站长之家
  • 请问 solaris 有没有类似windows的远程桌面(terminal)?
  • 菜鸟提问:请问Unix下面有没有类似Win32下_T这样的宏?
  • sco下面有没有类似proc的工具包?
  • ubuntu有没有类似mstsc的远程桌面控制程序?
  • 我用的是debian,有没有像office access类似的软件使用呢?
  • linux下C有没有类似于windows的资源处理办法
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • [AIX]有没有办法查到有没有用户执行了Kill命令
  • linux里有没有象vc那样的IDe啊,有没有类库什么的呢
  • 有没有用过 JCE 的朋友,生成x.509证书,有没有免费算法,用哪家的比较好,给出示例代码!
  • 请问jsp有没方法判断窗口有没有框架???
  • 有没有哪位知道linux下有没有什么可视聊天的工具
  • 请问:编译内核时,make bzimage命令后,提示没有这个规则,这有没有影响呀?
  • 有没有搞错,JSP精华版数据全部没有了。
  • 我想在VMware上装FreeBSD,有没有人这样做过?有什么问题没有?
  • 我重装了winme,却进不了Linux了,而我现在又没有Linux光盘,也没有Linux启动盘,还有没有办法?
  • Qt中有没有类似VB中winsock和timer的控件呀,我好像没有找到.
  • 转 请大家讨论一下,现在我们开发J2EE的Application Server还有没有机会,这里有没有这种人才? (愿意给300分)
  • 有没有用过ejb,又开始学com的,如果有,介绍一下经验?没有,则给个理由(如果你有时需要用DNA)?
  • java中有没有destructor的东东,好像一般的class里都没有嘛,难道不要手工做这些事情,全部交给gc处理吗?
  • 在linux redhat6.0中,进入x_window,请问系统有没有自带的c编译器,比如gcc;如果没有,那里可以下载并安装?
  • JAVA中没有宏,那编程和调试起来不是很麻烦吗?有没有一些折中办法?
  • SCJP有没有用
  • InstallShield 有没有linux版本的?
  • 有没有玩的转LINUX源码的高手?
  • 谁知道现在有没有Linux下的搜索引擎?
  • 谁知道现在有没有Linux下的搜索引擎??


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3