c 파이프 기본적인 질문..
      글쓴이: kimes / 작성시간: 월, 2005/06/20 - 2:49오후    
  
  간단히 제가 원하는건
echo 123 | ./pipedemo
이렇게 하면 그냥 123을 출력하는 프로그램을 짜고싶어
파이프를 참고해 
아래와같이 소스를 짜봤는데
그냥 아무 반응을 안해버리네요..
무엇이 문제일가요?
#include <sys/types.h>
#include <unistd.h>
#include <stdio.h>
#include <stdlib.h>
void read_from_pipe(int file){
	FILE* strm;
	int c;
	strm = fdopen(file, "r");
	while((c=fgetc(strm)) != EOF)
		putchar(c);
	fclose(strm);
}
int main(){
	int pipes[2];
	if(pipe(pipes)){
		fprintf(stderr, "Pipe failed.\n");
		return EXIT_FAILURE;
	}
	read_from_pipe(pipes[0]);
	return 0;
}
Forums: 


pipedemo 프로그램에서 STDIN을 읽으면 됩니다.[code:1
pipedemo 프로그램에서 STDIN을 읽으면 됩니다.
echo 123 | ./pipedemo는 쉘에서 pipe를 이용해 echo의 STDOUT과 pipedemo의 STDIN을 연결해주는 겁니다.
pipedemo에서 pipe를 사용할 필요는 없습니다.
댓글 달기