Shell
Shell
Shell 이란
- 운영 체제 기능을 사용자에게 제공하는 인터페이스이자 응용 프로그램.
- CLI혹은 GUI를 이용.
- 파일 관리, 프로세스 관리, 배치 프로세싱 등 OS가 제공하는 작업들을 수행 가능.
- OS 커널과 사용자를 연결해 주지만, 커널에 직접 연결된 것은 아님.
기능
- 사용자로부터 받은 명령을 해석해서 커널에 전달.
- 셸 스크립트를 통해 프로그래밍 가능.
- 초기화 파일을 통해 초기 환경 설정 가능.
- CLI에서는 재사용을 위해 일련의 명령을 저장 가능.
종류
- sh: bourne shell
- 최초의 본격적인 UNIX shell.
- Interpreter 방식이 아님.
- 프롬프트: # (root), $ (user)
- bash (bourne again shell)
- sh을 기반으로 한 현재 linux 표준 쉘.
- ksh, csh 등의 장점을 합쳤으며, 다양한 운영체제에서 사용.
- Alias, history, 자동 완성 등의 기능 제공
- 프롬프트: # (root), $ (user)
- csh (C shell)
- C 언어와 유사한 언어를 사용하는 interpreter 방식의 shell.
- 프롬프트: %
- ksh (korn shell)
- sh에 csh의 기능을 추가한 shell.
- 유닉스에서 가장 많이 사용.
- 프롬프트: $
- zsh (z shell)
References
- https://en.wikipedia.org/wiki/Shell_(computing)
- https://jhnyang.tistory.com/57
- https://byebyeblue.tistory.com/5
- https://velog.io/@naneun/Linux-%EC%89%98Shell%EC%9D%B4%EB%9E%80