Linux & Terminal

연정·2021년 10월 18일
0

Web

목록 보기
1/2
post-thumbnail

이번 주에는 개발자로써 기본적으로 알아야 하는 개념을 공부하고, 실용적인 tool들을 다룰 수 있는 방법을 배웠다. 대부분 처음 들어보는 내용이라 눈이 핑글핑글 돌았는데, 다시 한 번 정리하며 개념에 익숙해져보도록 하자.

Linux란?

Linux는 우리가 흔히 사용하는 Windows나 mac OS와 같은 운영체제이다. 일반인들이 많이 사용하지 않아 익숙하지 않지만, 웹서비스를 제공하는 대부분의 서버들이 Linux를 사용하고 있다. (서버컴퓨터 등이 주로 사용한다고 한다.) 즉, 우리가 개발한 프로그램이 배포되고 동작하는 환경이 Linux OS가 설치된 서버라는 것!

Linux는 트리 형태로 이루어진 파일 시스템 구조를 가지고 있다.

파일 구조에서 가장 상단에 위치한 root는 / 를 통해 접근할 수 있으며, 영어 단어 뜻 그대로 구조의 기반을 담당한다. 위의 이미지처럼 root 아래에는 다양한 하위 파일들이 존재한다.

Terminal이란?

우리가 OS에 명령을 내리는 방법에는 GUI와 CLI 두 가지가 있다.

GUI (Graphic User Interface)
GUI는 그래픽을 이용하여 유저와 컴퓨터가 소통하는 방식을 말한다. 마우스와 키보드를 활용하여 특정 아이콘을 눌러 작업을 실행하는 등 우리가 일상적으로 사용하는 방식이 GUI 방식이다. 이 방식은 쉽게 접근 & 활용할 수 있다는 점에서 장점을 갖는다.

CLI (Command Line Interface)
CLI는 문자의 입출력을 통해 유저와 컴퓨터가 소통하는 방식을 말한다. 사용자는 약속된 명령어를 텍스트로 입력하여 컴퓨터에게 명령을 내릴 수 있고, 컴퓨터는 이에 반응하여 입력된 명령어에 따른 출력을 한다. 이 방식은 명령어를 알아야만 사용할 수 있다는 점에서 한계가 있지만, 컴퓨터의 자원을 적게 사용하고 어떤 환경에서도 사용할 수 있다는 장점을 가지고 있다.

Terminal은 CLI 방식을 통해 사용자와 컴퓨터가 소통할 수 있게 도와주는 수단이자, Linux OS에 명령어를 전달할 수 있는 방법이다.

Linux의 기본 명령어

아래는 Terminal에서 사용할 수 있는 Linux의 기본 명령어이다. 다양한 명령어가 있지만 그 중 자주 사용되는 것 중심으로 기록한다.

/ : root directory
~ : home directory
절대경로 : root를 기반으로 파일을 찾고 움직이는 경로
상대경로 : 현재 나의 위치를 기반으로 움직이는 경로
	. : 현재 경로
   	.. : 현재 위치 기준 상위 경로
    
cd : change directory (cd 명령어 뒤에 붙은 directory로 이동)
ls : list segments (현재 경로 내 포함된 파일 목록 출력)
ls al : list segments all (숨김 파일까지 포함한 목록 출력)
pwd : print working directory (현재 경로 출력)
mkdir : make directory (새로운 directory 생성)
rm : remove (파일 삭제)
rm -r : 폴더 삭제
rm -rf : 현재 directory에 속한 모든 파일과 directory 삭제 *주의!
cp : copy (파일 혹은 directory 복사)
mv : move (파일 혹은 directory 이동)
touch : 새로운 파일 생성
vi : vi는 파일을 편집할 수 있는 편집기로 [vi 파일명.확장자]를 통해 새로운 파일 생성 및 편집 가능
profile
성장형 프론트엔드 개발자

0개의 댓글