콘솔 & 터미널 & 쉘(Shell)의 차이
1. 관계 비유
더보기
🧑 사용자 → 터미널 앱 → 셸 → 운영체제
- 터미널은 셸을 보여주는 화면 창이고
- 셸은 그 안에서 실제로 명령어를 실행하는 프로그램입니다.
용어 | 설명 | 예시 |
콘솔 (Console) | 과거의 물리적인 입력/출력 장치. 현재는 일반적으로 시스템과 직접 상호작용하는 기본 입출력 창을 의미함. | 예전의 모니터 + 키보드, 현재는 TTY(가상 콘솔) 같은 것 |
터미널 (Terminal Emulator) | GUI 환경에서 셸을 사용할 수 있도록 해주는 프로그램. 터미널은 셸을 담는 그릇 같은 역할을 함. | GNOME Terminal, KDE Konsole, Windows Terminal, xterm 등 |
셸 (Shell) | 사용자가 명령어를 입력하면 해석하여 운영체제에 전달하는 명령어 해석기 | bash, zsh, fish, sh, dash 등 |
2. 콘솔
더보기

텍스트 기반의 1)입력 장치와 2)출력 출력장치 환경을 가진 하드웨어, 기계를 의미한다.
일반적으로 컴퓨터에서, 대표적인 콘솔은 키보드 + 모니터다.


콘솔에 입력해 = 콘솔 하드웨어를 사용해서 명령어를 입력해
콘솔 프로그램이란?
- 터미널 + 쉘
- 콘솔 창을 기반으로 작동하는 프로그램
콘솔 창의 명칭은 OS마다 다르다.
Windows - 명령프롬프트
Linux - 쉘
3. 터미널
더보기
콘솔이라는 기계가 서버로 접속할 수 있도록 구현한 소프트웨어를 의미한다.
간단히 설명하자면, 웹 브라우저와 같은 사용자의 인터페이스 역할이다.
웹 브라우저(GUI) ≒ 터미널(CLI)
4. 쉘
더보기

실제 사용자로부터 명령을 받아 해석하고 커널 명령을 처리하는 소프트웨어, 프로그램이다.
우분투에서는 기본적으로 bash가 쓰이며, 다른 셸을 사용할 수도 있다.
Unix와 Unix-like 시스템에서 널리 사용되는 셸로는 sh, bash, ksh, zsh 등이 있다.
쉘 종류 | 특징 |
bash | 기본 셸 (Bourne Again Shell), 우분투 기본 |
zsh | bash보다 확장성이 강하고 테마가 풍부함 (oh-my-zsh 등) |
sh | POSIX 호환 기본 셸 |
fish | 자동 완성과 직관적 사용법 제공 |
쉘 ≒ 프로그램 로직
