달력

5

« 2024/5 »

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31

http://suite.tistory.com/ fs

 sort , uniq ,wc ...와 같은 시스템 명령어는 바로 stdout으로 내보내기 때문에 C 코딩에서 이 결과 데이터를
 사용하기 위해 <stdio.h>에 있는 popen() 이라는 걸 만들어 두었다. 사용 예제는 아래와같다.
   
 /*tmp_file 파일의 줄 수를 받아오기 */

 char line_buf[1024]={'\0'};


 FILE *pipe_fp;
        sprintf(cmd_buf,"wc -l %s",conf->tmp_file);

        if(!(pipe_fp=popen(cmd_buf,"r"))){

                printf("[error] can't open file : %s \n\n","popen()");
                return -1;
        }

  fread( line_buf, 1,sizeof(line_buf),pipe_fp );

  fclose(pipe_fp);

 

:
Posted by mastar