관리 메뉴

평행우주 : world 1

[CLI 기초] 정의 및 기본 명령어 본문

텃밭 3 : BE/Linux

[CLI 기초] 정의 및 기본 명령어

parallelworlds 2021. 12. 31. 12:38

 

CLI란 무엇인가?

CLI(Command-Line Interface)는 명령어를 입력해 컴퓨터를 조작하는 방식.

CLI와 같은 기능을 담당하지만, 대부분의 PC에서는 GUI(Graphical User Interface)를 적용.

GUI는 윈도우즈나 macOS, 또는 Linux에서 사용자가 화면을 통해 컴퓨터와 소통하는 방식.

 

 

 

CLI의 학습의 필요성

리눅스의 터미널은 키보드의 입력과 모니터의 출력으로 모든 작업을 할 수 있습니다.GUI가 PC(Personal Computer, 개인 컴퓨터)시장을 지배하게 되었지만, CLI는 여전히 여러가지 측면에서 유리합니다.

대표적으로 아마존 웹 서비스(AWS, Amazon Web Service)의 클라우드 컴퓨팅처럼, 대량의 서버 컴퓨터를 설치해야 하는 서비스를 잠시 살펴보겠습니다. AWS는 4천 평이 넘는 규모의 데이터센터를 29개 이상 가지고 있고, 계속해서 확장하고 있습니다. 하나의 데이터 센터에는 최소 5만개 이상의 서버 컴퓨터가 설치됩니다. 이렇게 수많은 컴퓨터에 GUI를 적용하기 위해 서버 컴퓨터마다 I/O 소스(키보드, 마우스, 모니터 등)를 부착하는 일은 불가능에 가깝습니다.

AWS 이전부터 서버 컴퓨터를 대여하는 일은 존재했습니다. AWS 이전 세대의 선배 개발자들은 GUI가 없는 서버 컴퓨터를 어떻게 다룰 수 있었을까요? CLI를 이용해 서버 컴퓨터로 접속을 요청하면, 서버 컴퓨터는 요청한 컴퓨터의 출력소스(모니터)를 이용합니다. 선배 개발자들은 서버 컴퓨터에 직접 찾아갈 필요없이, 자신의 모니터로 서버 컴퓨터와 소통했습니다.

이 방법은 매우 효율적이어서, 지금도 수많은 현직 개발자가 이 방법을 통해 서버 컴퓨터와 소통합니다. 그리고 대부분의 서버 컴퓨터는 무료로 이용할 수 있는 Linux 운영체제가 설치되어 있습니다. Linux 환경에서 CLI를 이용하는 방법은 개발자가 되기를 원하는 사람이라면, 반드시 학습해야 합니다.

 

 

 

 

 

기본 명령어

 

 

현재 위치를 확인할 수 있는 명령어 pwd (print working directory)

pwd

 

 

새로운 폴더를 생성하는 명령어 mkdir (make directories)

+) 명령어 mkdir은 생성할 폴더의 이름을 함께 입력해야한다.

mkdir helloWorld

 

 

 

특정 폴더에 포함된 파일이나 폴더를 확인하는 명령어 ls (list)

ls
  • ls -l : 가장 왼쪽에 출력되는 두 글자 d-를 확인 가능. 여기서 d로 출력된 경우는 폴더를, -로 출력된 경우는 파일을 나타냄.
  • ls -a : "all"이라는 의미입니다. 숨어있는 폴더나 파일을 포함한 모든 항목을 터미널에 출력
  • ls -al 또는 ls -la

 

 

macOS에서 현재 위치를 GUI로 실행하는 명령어 open

open .

 

cd (change directory) 명령어를 통한 폴더 진입

 

명령어 pwd를 사용해 현재 위치를 확인 

> 명령어 ls를 이용해 helloWorld 폴더를 확인

> 명령어 cd를 이용해 helloWorld 폴더로 진입

> 명령어 pwd를 이용해 현재 위치를 확인

# '#' 기호는 설명을 위해 사용되었습니다.
# pwd를 이용해 현재 위치를 확인합니다.
pwd
# [사용자명]은 처음 OS를 설치할 때 입력한 사용자 이름입니다.
# (Ubuntu) /home/[사용자명]
# (macOS) /Users/[사용자명]

# ls를 이용해 현재 위치의 모든 폴더와 파일을 확인합니다.
ls
# cd를 이용해 폴더 helloWorld로 진입합니다. 
cd helloWorld
# pwd를 이용해 현재 위치를 확인합니다.
pwd

 

 

 

 

touch 명령어로 파일 생성 

touch hi.txt

 

 

cat 명령어를 이용한 파일 내용 확인

cat hi.txt

 

 

+) 중간 정리 : 새로운 폴더 hello를 생성하고, hello 폴더 안에 새로운 폴더와 파일을 만드는 경우

# '#' 기호는 설명을 위해 사용하였습니다.
mkdir hello
cd hello # 폴더 hello로 진입합니다.
pwd # 현재 위치를 확인합니다.
mkdir bye
touch bye.txt
ls # 폴더와 파일을 출력합니다.

 

 

 

 

 

파일 삭제하기

 

1. ls : 현재 폴더에 어떤 폴더나 파일이 있는 지 확인

2. rm : (remove) 단일 파일 삭제. 이때 삭제된 파일은 휴지통을 거치지 않고 삭제됨

3. ls : 결과 확인

 

 

 

 

 

폴더 삭제하기

 

1. ls : 현재 폴더에 어떤 폴더나 파일이 있는 지 확인

2. rm -rf : (remove / recursive / force ) 단일 파일 삭제 / 폴더 삭제시 사용 / 질문없이 삭제시 사용. 

                 이때 삭제된 폴더는 휴지통을 거치지 않고 삭제됨

3. ls : 결과 확인

 

 

 

 

 

파일을 옮겨주는 명령어 mv(move) 

# '#' 기호는 설명을 위해 사용하였습니다.
mv bye.txt bye/
ls
# bye 폴더만 출력됩니다.

mv : bye.txt 파일을 bye 폴더로 옮김

ls  : 확인

# '#' 기호는 설명을 위해 사용하였습니다.
cd bye
ls
# bye.txt 파일이 출력됩니다.

 

cd : bye 폴더로 이동

ls : 폴더 bye로 이동이 잘되었는지 확인

 

 

 

 

 

폴더나 파일의 이름을 변경하는 명령어 mv

bye.txt 파일의 이름을 helloWorld.txt로 변경하는 법

# '#' 기호는 설명을 위해 사용하였습니다.
ls # 현재 폴더에 있는 폴더나 파일을 출력합니다.
# bye.txt 파일이 출력됩니다.
mv bye.txt helloWorld.txt
ls
# helloWorld.txt 파일이 출력됩니다.

 

 

 

 

폴더나 파일을 복사하는 명령어 cp (copy)

cp 원본파일이름 복사할파일이름 

# '#' 기호는 설명을 위해 사용하였습니다.
ls
# helloWorld.txt 가 출력됩니다.
cp helloWorld.txt hiComputer.txt
ls
# helloWorld.txt hiComputer.txt 가 출력됩니다.

 

폴더의 경우 cp -rf

 

 

 

 

 

폴더(위치)를 나타내는 법

 

cd . : 현재 폴더

cd .. : 현재 폴더의 상위 폴더

'텃밭 3 : BE > Linux' 카테고리의 다른 글

[ CLI] cavas 설치 오류 해결법  (0) 2022.03.07
[CLI] 사용권한  (0) 2022.02.24
[TIP] Homebrew 주요 명령어 정리  (0) 2021.12.31
[CLI 기초] 경로와 텍스트 에디터 nano  (0) 2021.12.31
Comments