WeniVooks

검색

바이브코딩 에센셜 with claude code

터미널 기초 이해

6. 터미널 기초 이해

1. 터미널이란 무엇이고 어디까지 알아야 하는가?

터미널은 컴퓨터와 텍스트로 대화하는 창입니다. 마우스로 클릭하는 대신 키보드로 명령을 입력하죠.

바이브 코딩에서 터미널을 알아야 하는 이유는 명확합니다. Claude Code, Gemini CLI, Cursor CLI 같은 AI 코딩 도구들이 모두 터미널 기반으로 작동하기 때문입니다.

그런데 왜 하필 터미널이었을까요? Claude Code의 팀 Cat Wu와 Boris Cherny이 ****Latent Space 팟캐스트에 출연하여 인터뷰한 내용에 ‘터미널에서 실행되기 때문에 웹이나 데스크톱에서는 얻을 수 없는 많은 것들에 접근할 수 있습니다.’ 라는 내용이 나옵니다. 브라우저는 우리 컴퓨터를 제어하는데 많은 제약이 있고, 우리가 앞서 설치한 VSCode와 같은 툴은 툴 종속적이게 되죠. 반면 터미널은 파일이나 폴더를 제어할 수 있으면서도 제약이 거의 없고, 모든 컴퓨터에 설치하지 않아도 존재합니다. 인터뷰에서는 Claude Code가 다른 도구보다 더 ‘원시적(raw)’ 이라는 얘기를 하는데 이 표현이 참 적절하다 생각합니다. 개발자가 필요로 하는 것에 집중한 것이죠.

다시 터미널로 돌아와 보겠습니다. Claude Code가 터미널 기반이라고 해서 터미널의 모든 것을 알 필요는 없습니다. 바이브 코딩을 위해 알아야할 필수 명령어만 정리를 해보았습니다.

2. GUI와 CLI

우리가 평소에 사용하는 컴퓨터 화면은 GUI(Graphical User Interface)입니다. 아이콘을 클릭하고, 창을 드래그하고, 버튼을 누르는 방식이죠. 반면 터미널은 CLI(Command Line Interface)를 사용합니다. 텍스트 명령어를 입력하면 컴퓨터가 텍스트로 응답합니다.

반면 터미널은 CLI(Command Line Interface)를 사용합니다. 텍스트 명령어를 입력하면 컴퓨터가 텍스트로 응답합니다. 예를 들어, 새 폴더를 만든다고 해봅시다. 각각 아래와 같은 방식으로 이뤄집니다.

  • GUI 방식: 바탕화면에 마우스 우클릭 → “새 폴더” 클릭 → 이름 입력
  • CLI 방식: 터미널에서 mkdir my-project 입력 → 엔터

사람에게는 GUI 방식이 편합니다. 직관적이니까요. 우리는 폴더를 만들기 위해 mkdir이라는 명령을 외울 필요가 없습니다. 다만 이 ‘직관’을 유지하기 위해 드는 리소스는 생각보다 큽니다. 마우스가 움직이는지 실시간으로 모니터링 해야하고, 마우스가 움직일 때마다 바탕화면에 ‘그려야’ 합니다. 폴더를 만들기 위해 마우스 오른쪽 클릭을 하고 폴더를 생성하면, 폴더를 생성하는 명령을 수행합니다. 이 명령을 CLI 환경에서는 mkdir이라는 단어 하나로 수행하고 있는 것이죠.

Claude Code와 같은 AI도구는 GUI보다 터미널과 같은 CLI 환경이 더 편합니다. 다른 표현을 찾아보려 노력했지만 ‘편하다’라는 표현 말고는 다른 표현을 하기 힘들 것 같습니다. AI 도구는 터미널 명령을 모두 알고 있습니다. 터미널을 통해 작성할 코드도 학습이 되어 있는 상태죠. 우리가 “[어떠한] 프로젝트를 개발해줘”라고 하면 AI가 자동으로 mkdir, touch, cd 같은 명령어들을 조합해 순식간에 작업을 완료합니다.

결국 CLI는 AI와 컴퓨터가 효율적으로 소통하는 공간입니다. 우리는 이 공간에 기초 지식만 알면, 복잡한 부분은 AI가 처리해줍니다.

3. 운영체제별 터미널 환경

3.1 Windows

Windows 는 두 가지 터미널 환경을 제공합니다.

  • Command Prompt (cmd): Windows의 전통적인 터미널
  • PowerShell: 더 강력한 Windows 전용 터미널

앞서 설정한 VSCode에서 터미널을 열면 PowerShell이 기본으로 열리게 되어 있습니다. 터미널만 필요한 경우 하단 검색에서 ‘파워쉘’ 또는 ‘명령 프롬프트’로 검색이 가능합니다.

차이가 궁금하신 분들을 위해 추가 설명을 드리도록 하겠습니다. 다만 이하 설명하는 것들은 굳이 몰라도 되는 내용입니다.

Windows와 Mac과 같은 것을 OS(Operating System)라고 부릅니다. 컴퓨터의 하드웨어와 소프트웨어를 관리하는 일을 하고 있죠. 여러분이 아는 OS는 몇가지인가요? 안드로이드도 있으니 3개, 많이 아시는 분이라고 하더라도 10개 미만일 것입니다.

아래 리눅스 족보를 보면 아시겠지만 여기 나와있는 것이 전부 OS입니다. 리눅스 족보입니다. Windows는 족보까지 필요 없을 정도로 심플하니까요. 리눅스 족보 어딘가에 Mac이 자리하고 있습니다. 찾는 것도 매우 힘듭니다.

6.1-1 GNU/Linux Distribution Timeline 11.4

6.1-1 GNU/Linux Distribution Timeline 11.4

한국에서는 Windows를 매우 많이 쓰고 있기 때문에 이렇게 많은 OS가 있었을 줄 모르셨을 겁니다. 리눅스는 ‘무료’입니다. 따라서 이걸 가지고 다른 OS를 만드는 것이 가능하죠. 그래서 이렇게 많은 OS가 탄생한 것입니다. 그리고 많은 ‘서버’도 리눅스를 사용하고 있는데요. 리눅스가 Windows보다 리소스도 매우 적게 먹기 때문입니다. GUI를 없애거나 최소화 시킬 수 있어요. 그러니까, 컴퓨터를 켜면 검은색 창에 흰색글자만 깜빡이는 OS가 생각보다 매우 많습니다. 이러면 리소스를 아낄 수 있거든요.

그런데 Windows에 전통적인 터미널인 Command Prompt 은 리눅스 명령어를 지원하지 않습니다. 당연한 거죠. 처음 시작이 달랐던 OS이니까요. 그렇지만 개발자들은 리눅스 명령어가 익숙하고, 개발에도 많이 쓰이다보니 Windows에도 이러한 명령어가 들어가길 원했어요. 그렇게 PowerShell이라는 터미널이 별도로 생기고 그곳에서 리눅스 명령어를 사용할 수 있게 된 것이죠. 물론 PowerShell에서 리눅스 명령어가 처음부터 되었던 것은 아닙니다. 그저 Command Prompt보다 나은 터미널이었죠.

스토리가 여기서 끝난 것이 아닙니다. 개발자들은 완전한 리눅스가 Windows 안에 들어오길 원했어요. 그리고 마침내 WSL(Windows Subsystem for Linux) 이라는 것이 탄생합니다. 이제 Windows 안에서 마이크로소프트 스토어를 통해 리눅스를 깔 수 있는 시대가 되었습니다. 참고로 저도 PowerShell보다 WSL이 편해서 여기서 Claude Code를 돌리고 있답니다.

3.2 Mac

Mac은 일반 터미널 사용하시면 됩니다. 위에서 말씀드렸듯이 리눅스에서 파생해 나온 OS이기 때문에 Windows처럼 구구절절한 스토리가 있진 않습니다. 런치패드를 켜시고, 터미널을 검색하여 실행할 수 있습니다.

  • Terminal: Mac의 기본 터미널
6장 바이브 코딩을 위한 터미널6.2 필수 터미널 명령어