最近观摩了一下Tinyhttpd的源码,Tinyhttpd 是J. David Blackstone在1999年写的一个不到 500 行的超轻量型 Http Server。
官网:http://tinyhttpd.sourceforge.net/
别人的总结:https://github.com/EZLippi/Tinyhttpd
其中有一段:
管道、重定向!!
自己来写个demo来学习一下
首先是server_demo.c的代码
#include <unistd.h>
#include <stdio.h>
#include <string.h>
#include <fcntl.h>
int main()
{
char s[1024] = "hello world";
int input[2],output[2];
pid_t pid;
if(pipe(input) < 0) return 0;
if(pipe(output) < 0) return 0;
pid = fork();
if(pid == 0)
{
dup2(input[0],STDIN_FILENO);//0
dup2(output[1],STDOUT_FILENO);//1