쉘(Shell)이란 무엇인가요?

날아올라돼지야·2024년 9월 13일
0

리눅스 마스터 과정

목록 보기
14/31

1. 쉘(Shell)이란 무엇인가?

  • 쉘(Shell)은 운영 체제의 서비스에 접근할 수 있도록 해주는 소프트웨어 인터페이스입니다. 즉, 사용자나 프로그램이 운영 체제와 상호작용할 수 있는 중개자 역할을 합니다.
  • 쉘은 사용자의 명령어를 받아서 운영 체제에 전달하고, 그 명령이 수행되도록 합니다. 쉽게 말해, 사용자의 명령어를 운영 체제가 이해할 수 있도록 번역하는 역할을 합니다.
  • 이라는 이름은, 쉘이 커널(Kernel)을 둘러싸고 있는 외부 껍데기와 같다는 의미에서 유래되었습니다. 마치 달팽이가 껍데기로 둘러싸여 있듯이, 운영 체제의 커널은 쉘로 감싸져 있습니다.

2. 터미널(Terminal)이란 무엇인가?

  • 터미널(Terminal)은 요즘에는 주로 프로그램이나 애플리케이션을 가리킵니다. 이 애플리케이션은 쉘을 실행시킬 수 있는 역할을 합니다.
  • 과거의 터미널은 실제 물리적 장치였으며, 하나의 거대한 컴퓨터 시스템에 여러 개의 터미널이 연결되어 있었습니다. 여러 사람들이 이 터미널을 통해 같은 컴퓨터에 접근할 수 있었습니다.
  • 오늘날 터미널은 물리적인 장치가 아니라, 소프트웨어로 동작하는 프로그램입니다. 우분투(Ubuntu)macOS에는 기본적으로 터미널이 포함되어 있으며, 사용자가 직접 터미널 애플리케이션을 설치하여 사용할 수도 있습니다.

3. 터미널과 쉘의 관계

  • 터미널에서 명령어를 입력하고 Enter 키를 누르면, 터미널은 그 명령어를 쉘로 전달합니다.
  • 쉘은 명령어를 받아 운영 체제에 전달하고, 그 결과를 다시 터미널로 출력해줍니다. 이 과정을 통해 사용자와 운영 체제 간의 상호작용이 이루어집니다.

4. 다양한 쉘(Shell)

  • 은 여러 종류가 있으며, 그 중 Bash가 가장 흔히 사용됩니다. 하지만, Zsh(Z Shell), Fish, PowerShell(Windows) 등 다른 쉘도 존재합니다.
  • 터미널은 동일하지만, 실행하는 쉘은 다를 수 있습니다. 예를 들어, 같은 터미널 창에서 Bash 쉘을 사용하다가 Zsh 쉘로 바꿀 수도 있습니다.

5. Bash란 무엇인가?

  • Bash는 가장 널리 사용되는 쉘입니다. 리눅스(Linux) 기반 시스템에서 기본 쉘로 제공되며, 오랜 시간 동안 많은 사용자들이 사용해 왔습니다.
  • Bash라는 이름은 Bourne Again Shell의 줄임말입니다. 이는 Steven Bourne이 만든 초기의 SH 쉘에서 비롯된 이름입니다. Bourne Again이라는 이름은 유머가 섞인 명칭입니다.
  • Bash유닉스(Unix)유닉스 계열 운영 체제에서 거의 모든 곳에서 사용 가능합니다. macOSUbuntu에도 Bash가 기본적으로 설치되어 있으며, 다른 쉘로 바꿀 수도 있지만, 대부분의 사용자는 Bash를 사용합니다.

6. 쉘의 역할

  • 은 사용자와 운영 체제 사이의 중개자입니다. 사용자가 터미널에 명령어를 입력하면, 터미널은 그 명령어를 쉘로 전달합니다. 그리고 쉘은 운영 체제에 명령어를 전달하여, 그 명령어가 실행되도록 합니다.
  • 이 과정을 통해 사용자는 운영 체제와 직접 상호작용할 수 있게 됩니다. 쉘은 이 과정을 간소화하여 사용자에게 결과를 출력해줍니다.

7. 정리

  • 이번 섹션에서는 터미널과 쉘의 차이점, 그리고 Bash가 무엇인지에 대해 다루었습니다. 터미널은 쉘을 실행할 수 있는 프로그램이며, 은 사용자의 명령어를 운영 체제에 전달하는 소프트웨어 인터페이스입니다.
  • Bash는 가장 널리 사용되는 쉘로, 대부분의 리눅스 및 유닉스 기반 시스템에서 기본 쉘로 사용됩니다.
  • 앞으로 다룰 명령어들은 Bash에서 실행되며, 이를 통해 우리는 운영 체제와 상호작용할 수 있습니다.

이렇게 쉘과 터미널의 개념을 이해하면, 명령어를 입력하고 그 명령어가 어떻게 실행되는지에 대한 큰 그림을 볼 수 있습니다.

profile
무슨 생각하며 사니

0개의 댓글

관련 채용 정보