Shell이란?
셸이란 사용자의 명령어를 해석하고 운영체제가 이해할 수 있게 지시해주는 명령어와 프로그램을 실핼 할 때 사용하는 인터페이스이다. 커널과 사용자 간을 연결해주는 역할을 하는데, 사용자로부터 명령을 받아 그것을 해석하고 프로그램을 실행한다.
윈도우 운영체제의 명령프롬프트(cmd), MAC의 터미널로 셸을 실행할 수 있다.
*단 명령프롬프트나 터미널은 엄밀히 말해 셸과는 다르다.
셸이 명령을 번역 및 처리한다면 이들은 사용자로부터 글자를 입력받아 셸로 전달하고, 여러 가지 결과의 출력값을 화면에 보여주는 역할을 하는 프로그램이다.
즉 셸은 아래의 역할을 한다
■ translator, interpreter
■ 프로그램과 유저 사이의 상호작용
■ 입력하는 명령어를 받아들이고, 번역하여 실행
셸의 종류
Bourne shell (프롬프트 : $일반유저/#루트유저)
- 디폴트 셸이다. 상호대화형 방식을 취하지 않고 있다.
- 히스토리, 에일리어스 등을 사용할 수 없다.
*프롬프트(prompt) : 컴퓨터가 입력을 기다리고 있음을 나타내기 위해 화면에 나타나는 표시
C shell (%)
- C언어와 유사한 언어 구조를 사용한다.
- 상호 대화형 방식으로 구성되어있다.
- 에일리어스, 히스토리 등의 기능 사용이 가능하다
Korn shell($)
- 본 셸(Bourn shell)과 호환이 된다.
- 에일리어스, 히스토리, 커맨드 라인 수정 등의 기능이 사용 가능하다.
Bash Shell($)
- 본 셸과(Bourn shell) 호환이 된다.
- C셸, 본 셸의 편리한 기능등을 지원한다.
- 리눅스, GUN, 맥 OS X 등 다양한 운영체제에서 사용중이다.
*터미널에 명령어 echo $SHELL을 사용하면 현재 사용 중인 셸을 확인할 수 있다.
'컴퓨터 > 리눅스 등' 카테고리의 다른 글
[리눅스/유닉스] 깃 이용하기(Git 설정) (0) | 2022.06.16 |
---|---|
[리눅스/유닉스]VI 라인 번호 표시 (0) | 2022.06.11 |
[리눅스/유닉스] 폴더 구조, 상대경로와 절대경로 (0) | 2022.05.20 |
[리눅스/유닉스] cat명령어 사용법, 리눅스 파일 만들기 (0) | 2022.05.20 |
[리눅스] 리눅스 리다이렉션 정리(리눅스 >, >>) (0) | 2022.05.14 |
댓글