[완료] execlp()에 관해서

goomi의 이미지

fork()를 해서 execlp(argv[0],argv[0],argv[1],argv[2],NULL);을 실행 한다고 하면

말그대로 mini 쉘에서 외부명령어를 쓸수 있게 구현하는건데요

ls -al 나 ls -a -l 같이 2개나 3개를 입력하면 실행이 되는데

왜 ls나 ll, date, whoami 같이 1개 인자만 입력하면 세그멘테이션 오류가 뜰까요?? ㅠㅠ

IsExist의 이미지

인자가 실행명령문 하나만 있는경우 argv[2] 엑세스 에서 오류 발생합니다.
다행히 인자가 2개인 경우 argv[2]는 NULL 이고요.
argv[0] ... argv[argc] 까지만 사용할 수 있습니다.
---------
간디가 말한 우리를 파괴시키는 7가지 요소

첫째, 노동 없는 부(富)/둘째, 양심 없는 쾌락
셋째, 인격 없는 지! 식/넷째, 윤리 없는 비지니스

이익추구를 위해서라면..

다섯째, 인성(人性)없는 과학
여섯째, 희생 없는 종교/일곱째, 신념 없는 정치

---------
간디가 말한 우리를 파괴시키는 7가지 요소

첫째, 노동 없는 부(富)/둘째, 양심 없는 쾌락
셋째, 인격 없는 지! 식/넷째, 윤리 없는 비지니스

이익추구를 위해서라면..

다섯째, 인성(人性)없는 과학
여섯째, 희생 없는 종교/일곱째, 신념 없는 정치