运行过程

#include <stdio.h>

void print_all(FILE *stream)
{
    int c;
    while ((c = getc(stream)) != EOF)
        putchar(c);
}
int main(void)
{
    FILE *stream;

    /* call netstat command. netstat is available for Windows and Linux */
    if ((stream = popen("netstat", "r")) == NULL)
        return 1;
  
    print_all(stream);
    pclose(stream);
    return 0;
}

该程序通过 popen() 运行一个进程( netstat ) 并读取进程的所有标准输出,并将其回显到标准输出。

注意: popen()标准 C 库中不存在,但它是 POSIX C的一部分 )