【进程通信】popen与pclose,创建一个管道连接到另一个进程中
2011-12-07 17:31
423 查看
管道是一种初级的进程间通信的办法,但简单的办法通常使用起来更加方便。因为工作中用到一点,所以先少量写一点,研究多了再慢慢补充。
先看看怎么用popen。
使用man popen查看popen的手册。
FILE *popen(const char *command, const char *type);
第一个参数,就是提供一个shell指令,第二个参数,可读还是可写,可以参考fopen
这段代码将,ifconfig本来打在标准输出的内容输入到了管道fp中,然后直接用fread将这段内容读到buffer中保存起来
然后就可以对该段内存进行编辑了
以后再补充怎么写popen这个函数
先看看怎么用popen。
#include <stdio.h> #include <stdlib.h> #include <unistd.h> #define SIZE 1024 int main(void) { FILE *fp; char buffer[SIZE]; fp = popen("ifconfig", "r"); fread(buffer, SIZE, 1, fp); printf("%s\n", buffer); pclose(fp); return 0; }
使用man popen查看popen的手册。
FILE *popen(const char *command, const char *type);
第一个参数,就是提供一个shell指令,第二个参数,可读还是可写,可以参考fopen
这段代码将,ifconfig本来打在标准输出的内容输入到了管道fp中,然后直接用fread将这段内容读到buffer中保存起来
然后就可以对该段内存进行编辑了
以后再补充怎么写popen这个函数
相关文章推荐
- 进程间的通信的管道的创建及使用
- 进程基本概念—创建以及管道通信
- Java中通过方法创建一个http连接并请求(服务器间进行通信)
- 创建一个进程来执行另一个程序
- Linux c 匿名管道实例—创建两个子进程与父进程进行管道通信
- Python和其他进程的管道通信方式--popen和popen2的比较
- linux 进程间管道通讯 popen以及pclose
- linux c之通过popen和pclose函数创建管道执行shell 运行命令使用总结
- python:Process、join()、进程的创建Process子类、进程池Pool、将一个文件夹的内容copy到另一个文件夹
- python:Process、join()、进程的创建Process子类、进程池Pool、将一个文件夹的内容copy到另一个文件夹
- 搭建一个服务器框架,进程间利用管道通信,线程处理数据
- windows进程间管道通信
- 进程通信之管道
- Linux进程通信总结(二) --管道
- 分析Linux内核创建一个新进程的过程
- XAF中如何实现Action创建一个可以编辑外连接对象的detail
- APUE学习之----进程通信pipe实现管道
- 由于权限问题造成网站客户端连接进程创建失败解决方法!