运行过程
#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的一部分 )