2
popen()을 사용하여 다른 프로그램을 호출하고 $로 반환 값을 가져 오길 원하십니까?
예 :
FILE* fd = popen("/usr/local/my_check > /dev/null ; echo $?","r");
int read_num = fread(buffer, sizeof(char), BUFFER_SIZE, fp);
printf("%s\n", buffer);
pclose(fd);
하지만 난 항상 PRTINF와 기능에 제로를 얻을.
$로 반환 값을 얻는 다른 방법은 없나요? C 프로그램에서?
감사합니다. 기능은 연결된 프로세스를 기다린다)이 만일 pclose를 (:
int ret = pclose(fd);
if(WIFEXITED(ret))
printf("%d\n", WEXITSTATUS(ret));
해보십시오 남자는 popen으로 종료 코드를 얻을 수 있습니다 : 여기
프로그램의 리턴 코드를 얻을 수있는 올바른 방법이다 종료; wait4 (2)에 의해 리턴 된대로 명령의 종료 상태를 리턴합니다. – andrewdski감사합니다. 나는 waitpid()에서 모든 것을 깨닫습니다. – SILENCE