■ 쉘이란?
쉘(shell)은 커널(Kernel)과 사용자간의 다리 역할을 하는 것으로 사용자로부터 명령을 받아 그것을 해석하고 프로그램을 실행하는 역할을 한다. 우리가 흔히 사용하는 원도우의 명령 프롬프트(cmd)도 쉘이다.
쉘은 사용자가 시스템에 로그인하게 되면 각 사용자에게 설정된 쉘이 부여되면서 다양한 명령어를 수행할 수 있게 된다. 달리 말하면 사용자에게 쉘을 부여하지 않게 되면 시스템에 로그인하더라도 명령을 수행할 수 없게 되므로 로그인을 막는 효과와 동일하다고 볼 수 있다.
■ 쉘의 종류
[1] Bourne Shell(sh)
Bourne Shell 은 1974년 개발된 최초의 쉘이다. 대부분의 리눅스에 기본적으로 설치가 되어있다. 설치 위치는 '/bin/sh' 이다.
[2] C Shell(csh)
C Shell 은 1978년 개발되었다. C Shell 은 Bourne Shell 의 사용성을 높이고, 더욱 강력하게 만들어졌다. C Shell 은 이름에서 보이다시피 C 언어를 기반으로 만든 Shell 이다. 때문에 강력한 프로그램 작성 기능을 지니었다. 설치 위치는 '/bin/csh' 이다.
[3] tee-see-Shell(tcsh)
tee-see-Shell 은 1983년 개발되어 소스코드를 게시하였다. 간단하게 설명하면 C Shell 에서 명령 행 완성과 명령 행 편집 기능을 추가한 것이다. 초기 맥 OS X 는 tcsh를 기본 셸로 포함하고 있었다. 하지만 시간이 지나고 배시 쉘에 밀려버렸다. 설치 위치는 '/bin/tcsh' 이다.
[4] Z Shell(zsh)
Z Shell 은 1990년에 첫 버전을 작성하였다. Z Shell 은 지금까지의 수 많은 쉘 들의 기능을 머금고 있다. 그렇기 때문에 많은 개선 사항들이 갖추어진 확장형 Bourne Shell 이다. 설치 위치는 '/bin/zsh' 이다.
[5] Bourne-again Shell(bash)
배시쉘(bash shell)은 1989년 브라이언 폭스가 GNU 프로젝트를 위해 개발하였으며 본 쉘(Bourne Shell)을 기반으로 만들어졌다. GNU 운영체제, 리눅스, 맥 OS X 등 다양한 운영체제에서 사용 중이며 현재 리눅스의 표준 쉘로 C Shell 과 Bourne Shell 의 기능들이 많이 포함 되어 있다. 대부분 Shell Script 라고 검색을 하면 기준이 대부분 Bash Shell 로 작성 되어 있다. bash의 명령어 문법은 sh와 호환되고 ksh와 csh의 유용한 기능을 참고하여 명령 히스토리, 명령어 완성 기능, 히스토리 치환, 명령행 편집 등을 지원한다. 그만큼 자료가 방대면서 배우기 쉽고, 강력하다는 증거이다. 설치 위치는 '/bin/bash' 이다.
- bash shell의 특징 : Alias 기능(명령어 단축 기능), History 기능(↑ or ↓), 연산 기능, Job Control 기능, 자동 이름 완성 기능(tab), 프롬프트 제어 기능, 명령 편집 기능 등
■ 쉘의 확인/변경
- 사용 중인 쉘 확인 "echo $SHELL"
- 사용가능한 쉘 리스트 확인 명령어 "cat /etc/shells"
- 쉘 변경 명령어 "chsh"
'프로그래밍 > Linux' 카테고리의 다른 글
4. 디렉터리 관련 명령어 (0) | 2024.12.21 |
---|---|
3. git clone, wget (0) | 2024.12.21 |
2. Linux 파일시스템 계층 구조 (0) | 2024.12.21 |
0.1 리눅스 버전 확인 (0) | 2024.12.21 |
0. 리눅스(Linux)란? (0) | 2024.06.24 |