기본적으로 특정 파일의 존재 여부를 확인하려고합니다. 그 때문에 나는 유닉스의 테스트 명령을 사용하고있다.C 프로그램의 linux 명령에서 리턴 코드 받기
sprintf(execbuf, "%s if test -r %s ; then true; else exit; fi;",
execbuf, st->file, NO_FILE);
잘 작동하지만 파일이 여기에 없으면 종료하지 않고 대신 FAIL을 반환해야합니다.
프로그램이 FAIL을 반환하는 방법을 알아낼 수 없습니다. 위의 명령에서 종료 코드를 사용하려고 생각했지만 여전히 프로그램의 Linux 명령 외부에서 종료 코드를 사용하는 방법을 파악할 수 없습니다.
'stat()'함수를 사용하는 것이 훨씬 쉽지 않을까요? 또는'access()'? – rodrigo
내 제안 된 솔루션에 대한 귀하의 의견을 바탕으로, C 코드를 통해 쉘 스크립팅을 실행하려고 시도하고 그 결과를 확인하겠습니까? – Mike
언제'sprintf()'가 프로그램을 실행할 수있는 능력을 얻었습니까? – quantum