Linux popen函数的使用总结_excel函数总结与运用

其他工作总结 时间:2020-02-28 02:46:08 收藏本文下载本文
【www.daodoc.com - 其他工作总结】

Linux popen函数的使用总结由刀豆文库小编整理,希望给你工作、学习、生活带来方便,猜你可能喜欢“excel函数总结与运用”。

Linux popen函数的使用总结

函数原型:

#include “stdio.h”

FILE *popen(const char* command, const char* mode)

参数说明:

command: 是一个指向以 NULL 结束的 shell 命令字符串的指针。这行命令将被传到 bin/sh 并使用-c 标志,shell 将执行这个命令。

mode: 只能是读或者写中的一种,得到的返回值(标准 I/O 流)也具有和 type 相应的只读或只写类型。如果 type 是 “r” 则文件指针连接到 command 的标准输出;如果 type 是 “w” 则文件指针连接到 command 的标准输入。

返回值:

如果调用成功,则返回一个读或者打开文件的指针,如果失败,返回NULL,具体错误要根据errno判断

int pclose(FILE* stream)

参数说明:

stream:popen返回的文件指针

返回值:

如果调用失败,返回-1

作用:

popen()函数用于创建一个管道:其内部实现为调用 fork 产生一个子进程,执行一个 shell 以运行命令来开启一个进程这个进程必须由 pclose()函数关闭。

例子:

管道读:先创建一个文件test,然后再test文件内写入“Read pipe succefully!”

#include “stdio.h”

#include “stdlib.h”

int main()

{

FILE *fp;

char buf[200] = {0};

if((fp = popen(“cat test”, “r”))== NULL){

perror(“Fail to popenn”);

exit(1);

}

while(fgets(buf, 200, fp)!= NULL){

printf(“%s”, buf);

}

pclose(fp);

return 0;

}

打印输出: Read pipe succefully!

管道读:

#include “stdio.h”

#include “stdlib.h”

int main()

{

FILE *fp;

char buf[200] = {0};

if((fp = popen(“cat > test1″, “w”))== NULL){

perror(“Fail to popenn”);

exit(1);

}

fwrite(“Read pipe succefully!”, 1, sizeof(“Read pipe succefully!”), fp);

pclose(fp);

return 0;

}

执行完毕后,当前目录下多了一个test1文件,打开,里面内容为Read pipe succefully!

下载Linux popen函数的使用总结word格式文档
下载Linux popen函数的使用总结.doc
将本文档下载到自己电脑,方便修改和收藏。
点此处下载文档

文档为doc格式

    热门文章
      整站推荐
        点击下载本文