여기에서 Linux의 파이프용 C 프로그램을 만듭니다. . 이 프로그램에서는 입력 스트림에서 일부 텍스트를 읽은 다음 출력 화면에 인쇄합니다.
먼저 파이프 에 대한 기본 사항을 알아보겠습니다. 리눅스에서
파이프 Linux 또는 Unix 기반 시스템에서 둘 사이에 표준 출력을 전송하기 위한 프로세스/명령/프로그램 간의 통신에 사용할 수 있습니다.
주목해야 할 한 가지 중요한 점은 파이프가 단방향이라는 것입니다. 즉, 데이터는 프로그램에서 왼쪽에서 오른쪽으로 또는 오른쪽에서 왼쪽으로 흐를 수 있습니다.
여기에서 사용자의 입력을 읽고 출력 화면에 인쇄하는 파이프를 생성합니다. 구현은 입력 arr[0]을 사용하고 출력 arr[1]을 반환하는 데 사용되는 크기 2의 배열을 사용합니다.
Linux의 파이프용 C 프로그램
예
#include <errno.h> #include<string.h> #include <fcntl.h> #include <stdio.h> #include <stdlib.h> #include <sys/wait.h> #include <unistd.h> int main(){ int Pipe[2]; char string[100]; if (pipe(Pipe) == -1){ perror("Filed to create pipe"); exit(1); } scanf("%s", string); write(Pipe[1], string, strlen(string)+1); printf("\n"); read(Pipe[0], string, 5); printf("%s", string); }
출력
input: TutorialsPoint TutorialsPoint