popen2.c

来自「unix环境高级编程 配套源代码 学习学习啊」· C语言 代码 · 共 31 行

C
31
字号
#include	<sys/wait.h>#include	"ourhdr.h"#define	PAGER	"${PAGER:-more}" /* environment variable, or default */intmain(int argc, char *argv[]){	char	line[MAXLINE];	FILE	*fpin, *fpout;	if (argc != 2)		err_quit("usage: a.out <pathname>");	if ( (fpin = fopen(argv[1], "r")) == NULL)		err_sys("can't open %s", argv[1]);	if ( (fpout = popen(PAGER, "w")) == NULL)		err_sys("popen error");		/* copy argv[1] to pager */	while (fgets(line, MAXLINE, fpin) != NULL) {		if (fputs(line, fpout) == EOF)			err_sys("fputs error to pipe");	}	if (ferror(fpin))		err_sys("fgets error");	if (pclose(fpout) == -1)		err_sys("pclose error");	exit(0);}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?