웹사이트 검색

Linux의 다른 유형의 셸은 무엇입니까?


쉘은 모든 Linux 사용자 세션의 중요한 부분입니다. 작업을 수행하기 위해 Linux에는 여러 유형의 셸이 제공됩니다. 각 셸에는 고유한 속성이 있습니다. 따라서 특정 요구 사항에 대해 하나의 셸이 다른 셸보다 나은 경우가 많이 있습니다.

따라서 Linux에서 사용할 수 있는 다양한 유형의 셸에 대해 인식하는 것이 중요합니다. 이 자습서에서는 셸이 무엇이며 왜 중요한지에 대해 설명합니다.

또한 기능과 속성을 이해하기 위해 Linux에서 다양한 유형의 셸을 탐색합니다.

셸이란 무엇이며 왜 필요합니까?

사용자가 시스템에 로그인하거나 콘솔 창을 열 때마다 커널은 새 셸 인스턴스를 실행합니다. 커널은 모든 운영 체제의 핵심입니다.

제어 관리 및 프로세스 실행을 담당하고 시스템 자원의 적절한 활용을 보장합니다.

쉘은 사용자와 커널 사이의 인터페이스 역할을 하는 프로그램입니다. 이를 통해 사용자는 커널에 명령을 내리고 응답을 받을 수 있습니다. 쉘을 통해 커널에서 프로그램과 유틸리티를 실행할 수 있습니다. 따라서 핵심적으로 쉘은 시스템에서 다른 프로그램을 실행하는 데 사용되는 프로그램입니다.

커널과 상호 작용할 수 있다는 점에서 쉘은 강력한 도구가 됩니다. 커널과 상호 작용하는 기능이 없으면 사용자는 시스템 운영 체제에서 제공하는 유틸리티에 액세스할 수 없습니다.

Linux 환경에서 사용할 수 있는 주요 셸에 대해 알아보겠습니다.

Linux의 다양한 유형의 셸

이제 커널이 무엇인지, 셸이 무엇인지, Linux 시스템에서 셸이 왜 중요한지 이해했다면 사용 가능한 다양한 유형의 셸에 대해 알아봅시다.

이러한 각 껍질은 다른 껍질보다 특정 유형의 사용에 대해 매우 효율적으로 만드는 속성을 가지고 있습니다. 따라서 속성 및 기능과 함께 Linux의 다양한 유형의 셸에 대해 논의하겠습니다.

1. 본 쉘(sh)

Steve Bourne이 AT&T Bell Labs에서 개발한 Bourne 셸은 최초의 UNIX 셸로 간주됩니다. sh로 표시됩니다. 컴팩트한 특성과 빠른 작동 속도로 인해 인기를 얻었습니다.

이것이 Solaris OS의 기본 셸이 된 이유입니다. 또한 모든 Solaris 시스템 관리 스크립트의 기본 쉘로도 사용됩니다. 여기에서 쉘 스크립팅에 대해 읽기 시작하십시오.

그러나 Bourne 쉘에는 몇 가지 중요한 단점이 있습니다.

  • 논리 및 산술 연산을 처리하는 내장 기능이 없습니다.
  • 또한 대부분의 Linux 쉘 유형과 달리 Bourne 쉘은 이전에 사용한 명령을 기억할 수 없습니다.
  • 적절한 대화식 사용을 제공하는 포괄적인 기능도 부족합니다.

Bourne 쉘의 전체 경로 이름은 /bin/sh 및 /sbin/sh입니다. 기본적으로 루트 사용자의 경우 프롬프트 #을 사용하고 루트가 아닌 사용자의 경우 $을 사용합니다.

2. GNU Bourne-Again 셸(bash)

Bash 셸로 더 널리 알려진 GNU Bourne-Again 셸은 Bourne 셸과 호환되도록 설계되었습니다. Korn 쉘 및 C 쉘과 같은 Linux의 다양한 유형의 쉘에서 유용한 기능을 통합합니다.

Bourne 쉘과 달리 이전에 사용한 명령을 자동으로 호출하고 화살표 키를 사용하여 편집할 수 있습니다.

GNU Bourne-Again 셸의 전체 경로 이름은 /bin/bash입니다. 기본적으로 루트 사용자의 경우 bash-VersionNumber# 프롬프트를 사용하고 루트가 아닌 사용자의 경우 bash-VersionNumber$ 프롬프트를 사용합니다.

3. C 쉘(csh)

C 쉘은 캘리포니아 대학에서 Bill Joy가 만들었습니다. csh로 표시됩니다. 산술 연산에 대한 내장 지원 및 C 프로그래밍 언어와 유사한 구문과 같은 유용한 프로그래밍 기능을 포함하도록 개발되었습니다.

또한 Bourne 셸과 같은 Linux의 다양한 유형의 셸에서 누락된 명령 기록을 통합했습니다. C 쉘의 또 다른 두드러진 특징은 \aliases입니다.

C 셸의 전체 경로 이름은 /bin/csh입니다. 기본적으로 루트 사용자의 경우 hostname# 프롬프트를 사용하고 루트가 아닌 사용자의 경우 hostname% 프롬프트를 사용합니다.

4. 콘 쉘(ksh)

Korn 셸은 Bourne 셸을 개선하기 위해 David Korn이 AT&T Bell Labs에서 개발했습니다. ksh로 표시됩니다. Korn 쉘은 본질적으로 Bourne 쉘의 상위 집합입니다.

Bourne 쉘이 지원하는 모든 것을 지원하는 것 외에도 사용자에게 새로운 기능을 제공합니다. C 셸과 유사한 대화형 기능을 제공하면서 산술 연산에 대한 내장 지원을 허용합니다.

Korn 셸은 C 프로그래밍 언어와 유사한 문자열, 배열 및 함수 조작을 제공하면서 Bourne 셸용으로 만들어진 스크립트를 실행합니다. 또한 C 쉘용으로 작성된 스크립트도 지원합니다. 또한 C 쉘을 포함하여 Linux의 대부분의 다른 유형의 쉘보다 빠릅니다.

Korn 쉘의 전체 경로 이름은 /bin/ksh입니다. 기본적으로 루트 사용자의 경우 프롬프트 #을 사용하고 루트가 아닌 사용자의 경우 $을 사용합니다.

5. Z 쉘(zsh)

Z Shell 또는 zsh는 커스터마이제이션을 위한 수많은 개선 사항이 포함된 sh 셸 확장입니다. 모든 기능을 훨씬 더 많이 갖춘 현대적인 셸을 원한다면 zsh 셸이 당신이 찾고 있는 것입니다.

z 셸의 몇 가지 주목할만한 기능은 다음과 같습니다.

  • 주어진 조건에 따라 파일 이름 생성
  • 플러그인 및 테마 지원
  • 내장 함수 색인
  • 명령 완성
  • 그리고 더 많은 것...

이 자습서에서 논의한 Linux의 다양한 셸을 아래 표에 요약해 보겠습니다.

Shell Complete path-name Prompt for root user Prompt for non root user
Bourne shell (sh) /bin/sh and /sbin/sh # $
GNU Bourne-Again shell (bash) /bin/bash bash-VersionNumber# bash-VersionNumber$
C shell (csh) /bin/csh # %
Korn shell (ksh) /bin/ksh # $
Z Shell (zsh) /bin/zsh <hostname># <hostname>%

마무리

쉘은 Linux 사용자가 사용할 수 있는 가장 강력한 도구 중 하나입니다. 셸이 없으면 사람이 자신의 시스템에 설치된 커널이 제공하는 기능을 활용하는 것이 사실상 불가능합니다.

Linux에서 가장 일반적으로 사용되는 셸 유형만 다루었지만 탐색할 가치가 있는 다른 많은 셸 유형이 있습니다.

이 자습서가 Linux의 다양한 유형의 셸 속성과 함께 셸의 개념을 이해하는 데 도움이 되었기를 바랍니다. 피드백, 질문 또는 제안 사항이 있는 경우 아래 의견을 통해 언제든지 문의해 주십시오.