이 영역을 누르면 첫 페이지로 이동
Coding Groot 블로그의 첫 페이지로 이동

Coding Groot

페이지 맨 위로 올라가기

Coding Groot

코딩 블로그

Terminal과 Shell

  • 2022.04.08 23:30
  • DevOps, Infra/Linux
글 작성자: Coding Groot

Terminal(Emulator)이란

대표적인 터미널 몇 개를 나열해보자면 terminal, iterm, xterm, konsole과 같은 프로그램이 있습니다.
리눅스와 같은 환경에서는 이러한 터미널을 통해서 쉘을 실행시켜고 여러 작업을 하게 됩니다. PC를 키면 터미널 프로그램부터 찾게 되죠ㅎㅎ. 세상에는 여러 터미널이 있는데 서로 지원해주는 기능도 다르고 각각의 특색이 있습니다. 사람마다 선호하는 것이 다릅니다.
이러한 터미널로 우리는 심심하게 보일 검은창을 꾸미고 (아니면 오히려 텍스트만 보이도록 하거나) 기능을 확장시킬 수 있습니다.
그래서 터미널 에뮬레이터라고도 부르는 것 같습니다.

저는 iterm2를 사용합니다.

저의 터미널입니닷

제 터미널 창을 보시면 상단에 "배터리, CPU, RAM" 상태와 SNIPPET을 실행시킬 수 있는 버튼을 둔걸 확인할 수 있습니다. 모두 iterm2에서 제공해주는 기능입니다. 그 외로 현재 보이는 창의 폰트나 투명배경이나 명령어 자동완성 기능 등도 터미널 에뮬레이터에서 제공해주는 기능입니다. 직접적으로 OS에 명령을 내리고 그런 것은 아니지만 외관적인 부분을 이쁘게 꾸밀 수 있고 Shell의 환경변수 같은 것을 읽어서 작업할 때 편리하게 해주는 역할을 합니다.
현재 창에 커서가 깜박이고 있는데 Shell에서 입력을 받길 기다리고 있다는 뜻입니다.

Shell이란

대표적인 터미널로 zsh, bash, fish, csh 등이 있습니다.
Shell이 바로 우리가 주는 명령어를 수행하고 스크립트를 실행하는 주체입니다.

셸(shell)은 운영체제 상에서 다양한 운영체제 기능과 서비스를 구현하는 인터페이스를 제공하는 프로그램이다. 셸(번역: 껍데기)은 사용자와 운영체제의 내부(커널) 사이의 인터페이스를 감싸는 층이기 때문에 그러한 이름이 붙었다.
출처: https://ko.wikipedia.org/wiki/%EC%85%B8

우리가 어떤 디렉터리에 있는 것들을 나열하는 프로그램인 'ls'를 호출하고 싶다고 합시다. 저는 보통 iterm2 터미널을 열고 (그리고 터미널은 shell을 열어서 입력 받을 수 있게 만들고) 우리는 여기에 ls라고 타이핑해서 ls라는 프로그램을 실행하고 결과를 확인합니다. 굳이 저 터미널이 아니라 xterm이라는 터미널을 통해 명령어를 입력해서 실행하고 있는 셸이 명령을 실행하기 때문에 결과는 동일합니다.

정리하자면 우리가 주는 명령어를 읽고 해석하고 운영체제에게 '이거 해줘'라고 하는 것은 shell이고 명령어를 편하게 입력하게 해주고 출력을 이쁘게 보여주는 프로그램은 터미널 에뮬레이터입니다.

반응형
저작자표시 비영리 동일조건 (새창열림)

댓글

이 글 공유하기

  • 구독하기

    구독하기

  • 카카오톡

    카카오톡

  • 라인

    라인

  • 트위터

    트위터

  • Facebook

    Facebook

  • 카카오스토리

    카카오스토리

  • 밴드

    밴드

  • 네이버 블로그

    네이버 블로그

  • Pocket

    Pocket

  • Evernote

    Evernote

다른 글

  • IPC

    IPC

    2025.03.20
  • Vim에서 Vundle 삭제하기

    Vim에서 Vundle 삭제하기

    2021.03.31
  • [WSL1/WSL2] 홈 디렉터리 위치 :: WSL 홈으로 Windows 파일 옮기기

    [WSL1/WSL2] 홈 디렉터리 위치 :: WSL 홈으로 Windows 파일 옮기기

    2020.05.16
  • [리눅스] apt, apt-get의 사용법 비교

    [리눅스] apt, apt-get의 사용법 비교

    2020.05.01
다른 글 더 둘러보기

정보

Coding Groot 블로그의 첫 페이지로 이동

Coding Groot

  • Coding Groot의 첫 페이지로 이동

검색

메뉴

  • 홈
  • 태그
  • 방명록
  • 소개
  • 블로그 저작권

카테고리

  • 분류 전체보기 (186)
    • Git (23)
      • Git Tutorial (9)
      • Git Note (7)
      • Git Lecture (7)
    • Programming Language (1)
      • C (2)
      • C Sharp (5)
      • Java (4)
      • JavaScript (7)
      • Julia (5)
      • Python (4)
    • Programming (8)
      • Algorithm (2)
      • Compiler (5)
      • Data Structure (0)
      • Web (12)
      • NestJS (2)
    • DevOps, Infra (36)
      • Apple (6)
      • Cloud (15)
      • Database (1)
      • Network (4)
      • Linux (8)
    • Game Programming (11)
      • Unity Tutorial (5)
      • Unity Note (6)
    • Hardware Design (1)
      • Digital Circuit (1)
    • Note (20)
      • Coffee (2)
      • Retrospect (15)
      • Reading List (14)
    • Mathematics (1)

최근 글

인기 글

댓글

공지사항

아카이브

태그

  • git
  • 한빛미디어
  • 회고
  • tutorial
  • 서평
  • aws
  • javascript
  • Github
  • 전체 보기…

정보

Coding Groot의 Coding Groot

Coding Groot

Coding Groot

블로그 구독하기

  • 구독하기
  • RSS 피드

티스토리

  • 티스토리 홈
  • 이 블로그 관리하기
  • 글쓰기

나의 외부 링크

  • GitHub
  • SlideShare
  • 유니티 2020 수업
  • TIL Blog
  • 모도코

방문자

  • 전체 방문자
  • 오늘
  • 어제
Powered by Tistory / Kakao. Copyright © Coding Groot.

티스토리툴바