본문 바로가기
Linux

[Linux] 셸의 개념과 셸의 유형 및 명령어 모음

by GoodDayDeveloper 2024. 11. 21.
반응형

 

 

셸(Shell)은 사용자가 커널의 서비스 기능을 사용할 수 있도록 하는 사용자 인터페이스입니다.

 

아래의 그림을 통해 쉽게 설명이 가능합니다.

 

 

 

 

리눅스의 구조에서는 하드웨어  / 커널 / 셸 / 응용프로그램으로 구성되어 있습니다.

 

 

여기서 셸은 메모리 관리를 담당하고 커널은 프로세스 관리를 담당합니다.

 

 

셸은 운영체제의 외부 계층을 형성하고 커널은 운영체제의 내부 계층을 형성합니다.

 

 

이 때문에 셸은 사용자로부터 명령어를 입력 받고 해석하여 내장 및 외장 명령어를 처리하는 대화형 사용자 인터페이스라 불립니다.

 

 

사용자가 직접적으로 커널에게 명령어를 내리는 것은 어렵기 때문에 셸을 통해 커널의 기능인 파일관리, 프로세스관리, 환경설정 등을 사용할 수 있습니다.

 

 

셸은 응용 프로그램이 아니라 일반 응용 프로그램과 같이 커널이 제공하는 시스템 콜을 통해 구현되어 있습니다. 한 마디로 말해서 사용자가 커널에게 간편히 명령을 내릴 수 있는 목적으로 만들어진 기본 응용 프로그램 입니다.

 

 

셸은 사용자와 상호작용한 다음 기계어로 해석하고 커널에서는 이 기계어를 받아서 하드웨어와 상호작용을 합니다.

 

 

 

[Linux] 셸의 개념과 셸의 유형 및 명령어 모음

 

 

 

셸의 유형은 대표적으로 본셸과 C셸로 나뉩니다.

 

 

본셸 : 유닉스에서 처음 나온 셸로서 1919년에 나타났으며 스티브 본이 개발해서 본셸이라 불립니다.

 

C셸 : 빌 조이라는 개발자가 개발한 셸로써 스크립트 형식이 C언어와 동일하기 때문에 C셸이라 불립니다.

 

 

계열 셸 종류 내용
본셸 sh (bourne shell) 유닉스 기본 셸로서 오랫동안 인기
ksh (korn shell) 본셸과 호환이 되며 히스토리 기능과 별칭 기능 및 작업 제어 기능이 추가되었고 명령행 편집 기능 제공
bash (bourne again shell) 리눅스에서 가장 많이 사용되는 셸로써 다양한 운영체제에 이식 가능.
sh와 호환이 되고 ksh와 csh에서 영향을 받아 두 종류의 기능을 모두 제공
C셸 csh (C shell) C언어를 기반으로 강력한 프로그래밍 기능을 제공하여 히스토리,별명,작업 제어 등을 제공
tcsh (TC shell) 명령줄 완성 기능과 명령줄 편집 기능을 영향받았고 csh와 호환 가능

 

 

 

아래 표를 통해 명령어들을 지속적으로 업데이트할 계획입니다. 

 

 

구분 링크
셸의 확인 업데이트되면 업로드 시키겠습니다.
   
   
   
   

 

 

 

 

 

 

반응형

댓글