<aside> 💡 미니쉘도 쉘이다..!

</aside>

미니쉘 구현에서 놓치기 쉬운 부분들을 정리해보려 합니다.

처음 미니쉘을 시작하려면 굉장히 막막한데 이 글로 키워드를 얻어가시길 바랍니다.

다소 엣지한 케이스까지 포함한 글이니 스스로 판단하여 구현할 부분을 정하시면 됩니다.

이 글은 2022년 10월 서브젝트 기준 보너스까지 구현하는 것을 기준으로 합니다.


0. 참고할 문서

  1. GNU Bash Manual

    https://www.gnu.org/software/bash/manual/bash.html

  2. Posix shell

    https://pubs.opengroup.org/onlinepubs/9699919799/utilities/contents.html

영어로 되어있고 친절하게 설명된 문서는 아니지만 이 둘을 보는게 가장 빠른 길입니다.

bash는 posix의 명세에 따른 여러 shell 중 하나입니다.

1번의 bash 메뉴얼을 보고 무엇을 구현해야 하는지 파악하고 2번의 posix 명세에 따라 코드를 작성하면 됩니다.

posix의 shell grammar와 tokenizing 기준을 보고 따르면 좋습니다.

이 글에 모든 것을 적진 않았으니 위 문서를 꼭 확인하시길 바랍니다.