c 에서 bash와 연동을 할때...
글쓴이: 익명 사용자 / 작성시간: 화, 2001/09/25 - 9:26오후
여기 올라오는 글들이 너무 전문적이라 이런 글 올려도 될지 모르겠지만...
그래도 용기를 내서 올려 봅니다.
c 에서 system() 함수로 따로 작성해놓은 스크립트를 실행시키고 그 결과를 다
시 c 에서 char * 형으로 받아쓰려면 어떻게 해야 하나요?
전 아무리 생각을 해도... bash에서 파일로 결과를 출력하고, 그걸 c에서 다
시 읽는 수 밖에 없는거 같은데...
좀더 간단하게 할 수 있는 방법은 없을까요?
고수님들의 답변 기대합니다.
감사합니다.
Forums:
Re: c 에서 bash와 연동을 할때...
리턴해야할 값이 작다면 환경변수에 저장을 하고
공유를 해도 될것 같은데요...
Re: c 에서 bash와 연동을 할때...
방법은 여러가지가 있을수 있습니다..
말씀하신 대로 간단하게 파일에 결과를 저장하는 방법도 한가지 방법이
되겠지요..
아니면 shared memory라든지, PIPE, socket 등의 방법도 생각해 볼수 있습니
다..
개발하고자 하는 상황에 맞추어서 가장 효과적인 방법을 찾아야 할것 같습니
다..
그럼...
Re: c 에서 bash와 연동을 할때...
pipe를 쓰는 것이 가장 편합니다. C 프로그래밍에서는
popen()과 pclose() 함수를 사용하면 되죠.
예를 들어 ls라는 명령을 실행하고 결과를 받고 싶다면
FILE *fp = popen("ls", "r");
fgets() 등의 함수를 이용해서 결과를 읽어들이고,
pclose(fp);
이렇게 하면 됩니다.
댓글 달기