Linux之popen()函数实现ls -l | grep fifo的功能

  • 设计一程序,要求用popen()函数,实现“ls –l | grep fifo”的功能。

程序源代码:

#include<stdio.h>

#include<string.h>

int main ()

{  

    FILE *fp;

    int num;  

    char buf[500];

    memset(buf,0,sizeof(buf));

    printf("建立管道……\n");

    fp=popen("ls -l","r");  

    if(fp!=NULL)

     {

        num=fread(buf,sizeof(char),500,fp);

      if(num>0)

       {

            printf("第一个命令是“ls–l”,运行结果如下:\n");

          printf("%s\n",buf);      

           }

      pclose(fp);  

      }

    else

     {

        printf("用popen创建管道错误\n");

      return 1;

     }

    fp=popen("grep fifo","w");  

    printf("第二个命令是“grep fifo”,运行结果如下:\n");

    fwrite(buf,sizeof(char),500,fp);

    pclose(fp);

    return 0;

}

Linux之popen()函数实现ls -l | grep fifo的功能

上一篇:linux – 打开命名管道进行编写并在select()中使用它


下一篇:java主线程管理启动其他线程