개요
Linux 내장 명령어를 실행하는 쉘 프로그램이다. 기본 쉘과 동일하게 대화식 명령어 입력이 가능하고, 프로그램 실행 시 인자로 파일을 넘겨줄 경우 배치식 모드로 쉘을 실행하게 된다. 배치식 모드는 넘겨받은 텍스트 파일 내에 있는 명령어들을 순서대로 실행한다. 쉘 프로그램은 다중 파이프 기능을 지원한다.
실행방법
$ make shell
./shell
기능
-
대화식 모드 명령어 실행
-
배치식 모드 명령어 실행
-
다중 파이프 명령어 실행
구현 방법
명령어를 실행하기 위해 execvp함수를 사용했다. fork()를 통해 자식 프로세스를 생성한 후 자식 프로세스에서 execvp 함수를 호출해 쉘의 환경 변수 PATH에 등록된 디렉터리에 위치한 실행 파일들을 실행하도록 했다.