리눅스 쉘(Shell) 종류 별 특징과 사용 쉘 확인 방법
- 운영체제(OS)
- 2022. 9. 28.
쉘(Shell)이란 운영체제에서 작동하는 텍스트 기반의 명령어 해석기입니다. 사용자가 텍스트로 운영체제에 명령을 하면 그 명령을 해석하고 필요한 시스템을 실행하거나, 프로그램 명령을 지시해주는 역할을 합니다.
즉, 쉘은 사용자와 운영체제 커널 사이의 인터페이스 역할을 하는 프로그램입니다. 이런 프로그램이 하나만 있는 것은 아닙니다. 개발된 쉘 별로 특징이 있으며 그에 따라 많이 특정 쉘은 자연스럽게 가장 많이 사용하는 쉘로 활용되고 있습니다.
윈도우 운영체제에서 쉘은 cmd와 PowerShell로 나눠집니다. 이 글에서 주로 다루려는 리눅스의 쉘은 아래에서 자세히 설명드리겠습니다.
리눅스 Shell 종류
1. Bourne shell (sh)
본쉘은 최초의 유닉스 쉘입니다. 모든 Solaris 시스템 관리 스크립트의 기본 쉘로 사용됩니다. 그러나 본쉘에는 몇 가지 단점이 있습니다. 논리, 산술 연산을 처리하는 기능이 없습니다. 이전에 사용한 명령을 불러오는(history) 기능이 없습니다.
- 본쉘 위치 : /bin/sh
- 프롬포트 : 루트 사용자는
#
를 사용하고, 그 외 사용자는$
를 사용합니다.
2. C shell (csh)
C쉘은 본쉘과 달리 산술 연산에 대한 내장 지원과 일부 C 프로그래밍 언어 기능이 포함된 쉘입니다. 대형 컴퓨터용 유닉스에서 C쉘이 많이 사용된다고 합니다.
- C쉘 위치 : /bin/csh
- 프롬포트 : 루트 사용자는
#
를 사용하고, 그 외 사용자는%
를 사용합니다.
3. Bourne Again shell (bash)
본어게인쉘은 bash라고 불리며, 대부분의 리눅스 배포판에서 기본적으로 주어지는 쉘입니다. 본쉘 문법을 모두 지원하는 동시에 C쉘의 일부 기능도 지원합니다. 이전에 사용한 명령을 자동으로 호출할 수 있습니다. 그래서 방향키 위, 아래를 누르면 이전에 명령한 텍스트가 완성됩니다.
- bash 위치 : /bin/bash, /bash/sh
- 프롬포트 : 루트 사용자는
#
를 사용하고, 그외 사용자는$
를 사용합니다.
4. Korn shell (ksh)
콘쉘은 본쉘의 상위 버전으로 본쉘을 개발한 곳에서 만들었습니다. 본쉘과 C쉘의 좋은 특징을 결합해 대화형 기능을 제공하면서도 산술 연산 기능을 지원합니다.
- bash 위치 : /bin/ksh
- 프롬포트 : 루트 사용자는
#
를 사용하고, 그외 사용자는$
를 사용합니다.
리눅스 사용 Shell 확인 방법
1. 기본으로 지정된 쉘 확인
echo $SHELL
/bin/bash
변수에 저장된 쉘 경로가 표시됩니다. 이 경우 bash를 기본쉘로 사용하고 있는 게 확인됩니다.
2. 현재 사용하고 있는 쉘 확인
echo $0
3. 어떤 쉘들이 설치되어 있는지 확인
cat /etc/shells
'운영체제(OS)' 카테고리의 다른 글
인터럽트(interrupt)란? 하드웨어, 소프트웨어 (0) | 2022.10.07 |
---|---|
리눅스 find 명령어 사용법 (파일 검색) (0) | 2022.09.30 |
윈도우 폴더 권한 부여하는 방법 (소유자, 사용자 권한) (0) | 2022.09.27 |
윈도우 uptime(시스템 가동 시간) 확인 방법 (0) | 2022.09.23 |
도커(Docker)란? VM과의 비교 (0) | 2022.09.21 |