1. 程式人生 > >linux的終端下的命令列管道"|"的簡單實現

linux的終端下的命令列管道"|"的簡單實現

兩個檔案:a.c和b.c

a.c內容:

#include <stdio.h>
#include <stdlib.h>

int main(int argc, char *argv[])
{
        if(argc < 2)
        {
                fprintf(stderr, "Usage: %s [string]\n", argv[0]);
                exit(0);
        }
        fprintf(stdout, "%s\n", argv[1]);
}

b.c內容如下:

#include <stdio.h>

int main()
{
        char str[256];
        fscanf(stdin, "%s", str);
        printf("%s:%s\n", __func__, str);
}

分別編譯生成a.exe 和 b.exe

然後簡單新增一個環境變數:

$ export PATH=$PATH:./

最後就可以試試了:

$ a.exe | b.exe
Usage: a [string]
main:▒

$ a.exe  rongtao | b.exe
main:rongtao