안녕하세요 사용자에두고 명령에 대한 올바른 경로를 찾기 위해 **environ
변수와 함께 execvp()
를 사용하는 것을 시도하고있다.unistd.h에서 ** environ을 사용하여 올바른 경로를 검색하려면 어떻게합니까?
문제는 정말이 작업을 수행하는 방법을 이해하지 못하는 것입니다. 나는 단지 명령 파일을 열어 그들이 존재하는지 확인하려고 할 수 있다는 것을 알고 있지만 검색 할 경로를 얻는 방법을 이해하지 못한다. **environ
.
'** environ'은 어디에서 왔습니까? 이 작업을 수행하는 방법을 알고있는 유일한 방법은 단지 문자열을 반환하는 getenv ("PATH")를 사용하는 것입니다.이 경로는 일반적으로 콜론으로 구분 된 경로 변수의 목록입니다. 이것을 구문 분석하기 위해'strtok'을 사용할 수 있습니다. –
이 답변보기 http://stackoverflow.com/questions/3127614/global-variable-for-getenv 문자열 배열을 뒤집고 PATH 변수를 검색해야합니다. PATH 문자열을 찾으면 문자열에 포함 된 경로를 구문 분석 할 수 있습니다. – Duck