저는 많은 것을 수색했지만, 아직 답을 찾을 수 없습니다. 쉘처럼 작동하고 사용자에게 원하는 명령을 묻는 프로그램이 있는데 execlp를 사용하여이 새 프로세스를 엽니 다. 명령이 실행되었는지 또는 수신 된 명령이 존재하지 않는지를 쉽게 알 수있는 방법이 있는지 알고 싶었습니다. 1과 ENOENT에 errno를 설정 - 지정된 찾을 수없는 경우, 다음 때 execlp가 반환됩니다exec에 주어진 명령이 있다면 어떻게 알 수 있습니까?
execlp(argv[0], argv[0], (char *)NULL);
"execlp의 반환 값은 무엇입니까?"라는 Google의 검색이 유용 할 수 있습니다. 게시하기 전에 질문에 대해 생각하는 것도 유용합니다. 당신이 무언가를 한 결과를 결코 확인하지 못한다면, 그것이 효과가 있었는지 아닌지 어떻게 알 것입니까? –
'execl()은 아마도 장기간 사용할 함수가 아닙니다. 필요한 인수의 개수를 알지 못하고'execlp()'가 컴파일 타임에 인수의 갯수를 결정해야하기 때문에 일반적으로'execvp()'를 사용할 필요가 있습니다. –