리눅스 쉘(Shell) 종류 별 특징과 사용 쉘 확인 방법

쉘(Shell)이란 운영체제에서 작동하는 텍스트 기반의 명령어 해석기입니다. 사용자가 텍스트로 운영체제에 명령을 하면 그 명령을 해석하고 필요한 시스템을 실행하거나, 프로그램 명령을 지시해주는 역할을 합니다.

 

즉, 쉘은 사용자와 운영체제 커널 사이의 인터페이스 역할을 하는 프로그램입니다. 이런 프로그램이 하나만 있는 것은 아닙니다. 개발된 쉘 별로 특징이 있으며 그에 따라 많이 특정 쉘은 자연스럽게 가장 많이 사용하는 쉘로 활용되고 있습니다.

 

윈도우 운영체제에서 쉘은 cmdPowerShell로 나눠집니다. 이 글에서 주로 다루려는 리눅스의 쉘은 아래에서 자세히 설명드리겠습니다.

리눅스 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
반응형

댓글

Designed by JB FACTORY