터미널은 컴퓨터와 사용자 간의 소통을 가능하게 해주는 명령줄 인터페이스(Command Line Interface)입니다
사용자는 텍스트 기반 명령어를 입력하여 시스템의 다양한 기능을 제어하고 실행할 수 있습니다.
터미널은 그래픽 사용자 인터페이스(GUI)가 없던 시절부터 사용되어 왔으며, 현재도 서버 관리, 개발, 자동화 작업 등에서 널리 사용됩니다.
터미널은 사용자가 텍스트 명령어를 입력할 수 있는 환경으로, 입력된 명령어는 운영체제의 쉘(Shell)을 통해 해석되고 실행됩니다
여기서 쉘(Shell)은 커널과 사용자를 소통할 수 있게 만드는 장치로 알고 계시면 됩니다.
터미널에서 제공하는 명령어는 주로 파일 관리, 프로세스 제어, 네트워크 설정 등의 작업을 수행하는 데 사용되며, 시스템 자원에 더 깊이 접근하고 제어할 수 있는 강력한 도구입니다.
CLI 란?
텍스트 기반의 명령어 인터페이스로, 명령어를 직접 입력하여 시스템을 제어합니다.
사용자는 키보드를 통해 명령어를 입력하고, 그 결과는 텍스트로 출력됩니다.
터미널은 반복적인 작업이나 복잡한 시스템 제어를 간단하고 효율적으로 수행할 수 있는 장점이 있습니다.
GUI 란?
마우스와 같은 포인팅 장치를 사용하여 그래픽 요소(아이콘, 창 등)를 클릭하고 시스템을 제어하는 방식입니다.
사용자 친화적인 환경을 제공하며, 사용자가 복잡한 명령어를 몰라도 직관적으로 컴퓨터를 사용할 수 있습니다.
그러나 GUI는 터미널에 비해 복잡한 작업의 자동화나 대규모 시스템 관리에는 제한이 있습니다.
많은 개발 도구와 프레임워크는 CLI 도구를 제공합니다.
Git, Node.js, Docker, Kubernetes, AWS CLI, Terraform 등은 모두 CLI 기반으로 동작합니다.
많은 서버는 CLI 환경에서 관리됩니다.
특히 리눅스 서버는 CLI가 기본 관리 도구로 사용됩니다. 원격 서버에 접속해 서버를 관리하거나 배포할 때, CLI를 사용해야 하므로 CLI 환경은 개발자들에게 필수 요소 입니다.
Win + R을 눌러 실행 창을 엽니다.cmd를 입력하고 Enter를 누르면 명령 프롬프트가 실행됩니다.Command + Space를 눌러 Spotlight 검색 창을 열고 "터미널"을 검색하여 실행할 수 있습니다.Ctrl + Alt + T를 눌러 터미널을 바로 실행할 수 있습니다.앞서 설명한 여러 터미널들이 있지만 비기너 트랙에서 우리는
를 사용한다고 합니다
*디렉토리란??
윈도우의 폴더와 같습니다.
운영체제들은 폴더안에 폴더를 만들어 계층구조(트리구조)로 파일 및 폴더를 관리합니다.
C:\
└── Users
└── 내이름
├── Documents
│ └── report.docx
└── Pictures
└── photo.jpg
------------------------------------------------------------------
C:\ → 루트 디렉토리 (가장 위에 있는 폴더)
Users → 디렉토리
내이름 → 디렉토리
Documents → 디렉토리
report.docx → 파일
Pictures → 디렉토리
photo.jpg → 파일
ls: 디렉토리 내 파일 목록 보기ls -l (상세 정보 표시)cd: 디렉토리 이동cd /path/to/directorymkdir: 디렉토리 생성mkdir new_directoryecho : 파일 생성echo "Hello, World!"(담을내용) > example.txt(만들 파일명)cp: 파일 복사cp source.txt(복사할 파일명) destination.txt(복사후 파일명)rm: 파일 삭제rm 명령어를 사용합니다.rm file.txtrm -r을 사용하여 재귀적으로 삭제해야 합니다.cat: 파일 내용 출력cat example.txtecho: 텍스트 출력echo "Hello, World!"pwd: 현재 작업 디렉토리 표시pwdclear: 터미널 화면 지우기clear(Option) 표시는 실습이 가능하지만 추가학습이 필요한 내용입니다.
ps: 실행 중인 프로세스 목록 보기pskill: 프로세스 종료kill [PID] (프로세스 ID로 프로세스 종료)ping: 네트워크 연결 테스트ping google.com$PATH: 시스템 경로 확인echo $PATH$Env:PATHexport: 환경 변수 설정export VAR_NAME=value