오늘은 터미널에 대해서 기록할거다.
터미널...들어 본 단어이다.. 정확하게는 알지 못하나.. 기억하기로는 소통을 가능하게 해주는 정도로 알고 있다
터미널에 대해서 조금 더 알아보자.
### 1. **터미널이란?**
터미널은 컴퓨터와 사용자 간의 소통을 가능하게 해주는 명령줄 인터페이스(Command Line Interface).
사용자는 텍스트 기반 명령어를 입력하여 시스템의 다양한 기능을 제어하고 실행할 수 있다.
터미널은 그래픽 사용자 인터페이스(GUI)가 없던 시절부터 사용되어 왔으며, 현재도 서버 관리, 개발, 자동화 작업 등에서 널리 사용 된다.
터미널의 정의
터미널은 사용자가 텍스트 명령어를 입력할 수 있는 환경으로, 입력된 명령어는 운영체제의 쉘(Shell)을 통해 해석되고 실행.
여기서 쉘(Shell)은 커널과 사용자를 소통할 수 있게 만드는 장치로 알고 있으면 된다.
터미널에서 제공하는 명령어는 주로 파일 관리, 프로세스 제어, 네트워크 설정 등의 작업을 수행하는 데 사용되며,
시스템 자원에 더 깊이 접근하고 제어할 수 있는 강력한 도구
터미널이랑 연관된 CLI에대해서도 알아보자
CLI란?
텍스트 기반의 명령어 인터페이스로, 명령어를 직접 입력하여 시스템을 제어.
사용자는 키보드를 통해 명령어를 입력하고, 그 결과는 텍스트로 출력.
터미널은 반복적인 작업이나 복잡한 시스템 제어를 간단하고 효율적으로 수행할 수 있는 장점.
참고로 알고 있으면 좋은 GUI
GUI란?
마우스와 같은 포인팅 장치를 사용하여 그래픽 요소(아이콘, 창 등)를 클릭하고 시스템을 제어하는 방식.
사용자 친화적인 환경을 제공하며, 사용자가 복잡한 명령어를 몰라도 직관적으로 컴퓨터를 사용할 수 있다.
그러나 GUI는 터미널에 비해 복잡한 작업의 자동화나 대규모 시스템 관리에는 제한.
그렇다면 CLI를 왜 배워야 할까?
구글링 해보면 많은 이유들이 나오겠지만, 우선 두가지를 이야기 하고싶다.
첫번째, 많은 개발 도구와 프레임워크는 CLI 도구를 제공.
예를 들어, Git, Node.js, Docker, Kubernetes, AWS CLI, Terraform 등은 모두 CLI 기반으로 동작.
두번째, 많은 서버는 CLI 환경에서 관리.
특히 리눅스 서버는 CLI가 기본 관리 도구로 사용. 원격 서버에 접속해 서버를 관리하거나 배포할 때, CLI를 사용해야 하므로 CLI 환경은 개발자들에게 필수 요소 .
기본적인 이론을 알기 쉽게 나름대로 정리를 해봤다.
이론을 알았으니 간단한 실습을 기록한다.
