DEV INFO

CLI, GUI, Shell 기초 개념 정리

1ncode 2025. 12. 1. 00:51

CLI란? (Command Line Interface)

 - 키보드로 직접 명령어를 입력해서 컴퓨터와 소통하는 방식

 

"명령어로 사용하는 인터페이스"

  • 예: 터미널, 명령 프롬프트, Git Bash
  • '명령어'로 컴퓨터와 대화하는 방식

GUI란? (Graphical User Interface)
 -  버튼, 창, 아이콘 등 눈에 보이는 화면을 클릭해서 컴퓨터와 상호작용하는 방식이야.

 

"그래픽으로 사용하는 인터페이스"

  • 예: 소스트리, VSCode 등
  • '그래픽'을 클릭하면서 컴퓨터와 대화하는 방식

shell 이란?

셸(shell)은 운영체제와 사용자간의 인터페이스 역활을 하는 프로그램. 

터미널에서 사용되는 주로 CLI를 제고하여 사용자가 텍스트 기반 명령어를 사용하여 컴퓨터와 상화작용 가능

 

운영체제(OS)와 사용자 사이에서 ‘중간 통역사 역할’을 하는 프로그램.

 

사용자가 입력한 명령어를 OS가 이해하도록 전달하고, OS가 실행한 결과를 다시 사용자에게 보여주는 인터페이스

➡ 즉, 명령어 → Shell → 운영체제 흐름으로 동작함.

 

 >> 셸 = 명령어를 대신 해석해서 운영체제에게 전달해주는 중간 관리자


운영체제별 기본 셸

  • Windows → 기본 셸: PowerShell
  • macOS → 기본 셸: Zsh
  • Linux(우분투 등) → 기본 셸: Bash

 

그럼 PowerShell 이란?

  • 마이크로소프트(Microsoft)가 만든 셸
  • Windows에 기본 설치
  • 명령어 문법이 윈도우 환경에 최적화되어 있음
  • 그래서 macOS나 Linux로 옮기면 명령어가 호환되지 않는 경우가 많음

Windows 전용에 가깝다. 다른 OS로 가면 명령어가 맞지 않는 경우도 있다.

 


Bash & Zsh

  • Linux·macOS에서 가장 널리 쓰이는 셸
  • 명령어 문법이 거의 비슷해서 서로 호환성이 매우 높음
  • Bash: 주로 Linux 기본
  • Zsh: macOS 기본
  • Git Bash처럼 여러 개발환경에서도 많이 사용됨

mac과 Linux에서 표준처럼 쓰이는 셸. 서로 잘 호환됨


Git 설치하면?

Git을 설치하면 자동으로 Git Bash가 함께 설치됨