ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [Linux] Shell의 종류
    리눅스(Linux) 2023. 5. 4. 21:09

    셸(Shell)이란?

    커널(Kernel)과 사용자간의 다리역할을 하는 것으로 사용자로부터 명령을 받아 그것을 해석하고 프로그램을 실행하는 역할을 함.

     

    주요 셸(Shell)의 특징

    특징
    Bourne Shell 1977년 AT&T 벨 연구소에 근무하는 스티븐 본(Stephen Bourne)이 개발한 유닉스 버전 7의 기본 셸
    bash 1989년 브라이언 폭스(Brian Fox)가 GNU 프로젝트를 위해 개발한 배시셸(Bourne Again Shell, bash)은 본 셸을 기반으로 하여 만들어졌다. GNU 운영체제, 리눅스, 맥 OS X 등 다양한 운영체제에서 사용 중이며 현재 리눅스의 표준 셸이다. bash의 명령어 문법은 sh와 호환되고, ksh와 csh의 유용한 기능을 참고하여 명령 히스토리, 명령어 완성 기능, 히스토리 치환(history substitution), 명령행 편집(Command Line Edit) 등을 지원하고 POSIX와도 호환된다.
    C Shell C Shell(csh)은 1978년 버클리 대학의 빌 조이가 개발한 것으로 C 언어를 기반으로 만들어졌으며 강력한 프로그램 작성 기능을 가지고 있다. 히스토리 기능, 별명(Alias) 기능, 작업 제어 등의 유용한 기능들을 포함하였다. 명령행 편집 기능은 지원하지 않는다.
    tcsh 1975년 켄 그리어(Ken Greer)가 테넥스(TENEX)라는 운영체제에 명령행 완성 기능을 반영하게 되었고, 1981년 C Shell과 통합해서 탄생시킨 것이 tcsh이다. tcsh는 TENEX C Shell 또는 The enhanced C Shell를 뜻한다. csh의 기본 기능에 명령어 완성 기능(command-completion), 명령행 편집 기능 등을 추가로 지원한다.
    ksh 콘 셸(Korn Shell, ksh)은 1983년 AT&T사의 벨연구소에서 근무하던 데이비드 콘(David Korn)이 개발하였다. 본 셸을 확장해서 만들어졌으며, 벨연구소 사용자들의 요청으로 C 셸의 많은 기능을 추가하였다. 작업 제어, 별명(Alias) 기능, 히스토리 기능, Vi 및 Emacs 스타일의 명령행 편집 기능, 명령행 완성 기능 등을 제공한다.
    dash Dash(Debian Almquist Shell)는 POSIX와 호환되는 /bin/sh를 가능한 작게 구현한 셸로 빠른 작업 수행이 특징이다. Dash는 NetBSD의 ash(Almquist Shell, 1989년 Kenneth Almquist가 만든 유닉스용 셸)에서 파생된 것으로 1997년에 리눅스로 포팅되었다. 2002년에 DASH로 이름이 변경되었고, 가벼운 셸인 관계로 레드햇 계열보다는 데비안 및 우분투 계열 리눅스에서 많이 사용되고 있다. Bash와 비교하여 소스 크기도 매우 작고 처리 속도도 빠르지만, 히스토리 명령 등은 지원하지 않는다.

     

    '리눅스(Linux)' 카테고리의 다른 글

    [Linux] ip 명령어  (0) 2023.05.05
    [Linux] 네트워크 하드웨어  (0) 2023.05.05
    [Linux] 리눅스 파일 시스템(File System)  (0) 2023.05.04
    [Linux] 리눅스 디렉터리 구조  (0) 2023.05.03
    [Linux] Rocky Linux 고정IP 할당  (0) 2023.05.01

    댓글

Designed by Tistory.