오늘은 Linux에 대한 기초를 다지는 시간을 가졌다.
내 컴퓨터의 운영체제는 Windows이기 때문에 Ubuntu를 설치하여 모든 실습을 진행하였다.
학습 목표
- 리눅스 터미널을 실행할 수 있다.
- CLI를 이용한 작업과 GUI를 이용한 작업이 동일함을 이해할 수 있다.
- 리눅스 터미널에서 기본적인 명령어를 사용할 수 있다.
- 명령어를 사용할 때, 등장하는 키워드에 대해 이해할 수 있다.
컴퓨터를 조작하기 위한 입력과 출력을 간단하게 I/O(Input/Output)라고 표기하며, "아이오"라고 읽는다.
리눅스의 터미널은 키보드의 입력과 모니터의 출력으로 모든 작업을 할 수 있다.
리눅스 터미널은 GUI
가 개발되기 이전부터 컴퓨터를 조작하기 위해 사용되었기 때문에, GUI
가 할 수 있는 모든 작업은 CLI
로 할 수 있다.
GUI
(Graphical User Interface) : 그래픽 사용자 인터페이스, 사용자가 편리하게 사용할 수 있도록 입출력 등의 기능을 알기 쉬운 아이콘 따위의 그래픽으로 나타낸 것이다.CLI
(Command-Line Interface) : 명령 줄 인터페이스, 가상 터미널 또는 터미널을 통해 사용자와 컴퓨터가 상호 작용하는 방식을 뜻한다.CLI
를 이용해 서버 컴퓨터로 접속을 요청하면, 서버 컴퓨터는 요청한 컴퓨터의 출력 소스(모니터)를 이용한다.
pwd
를 프롬프트에 입력하고, Enter
(엔터 키)를 누르면 현재 경로가 나타난다. pwd
mkdir
은 make directories의 약자로, 폴더를 만들라는 명령을 컴퓨터에 전달한다.mkdir
은 생성할 폴더의 이름을 함께 입력해야 한다.Space
(스페이스 키)로 구분한다.mkdir helloWorld
ls
는 list의 약자로, 특정 폴더에 포함된 파일이나 하위 폴더의 리스트를 출력한다.ls
ls
에는 자주 사용하는 옵션 l
과 a
가 있다. CLI에서 특정 명령어의 옵션을 사용하는 경우에는 -
를 이용해 옵션을 입력했다고 컴퓨터에 전달한다.l
은 폴더나 파일의 포맷을 전부 표현하라는 의미이다.d
와 -
를 확인할 수 있다.drwxr-xr-x
-rw-r--r--
d
로 출력된 경우는 폴더를, -
로 출력된 경우는 파일을 나타낸다.a
는 "all"이라는 의미이다.-
) 뒤에 오는 옵션의 순서는 기능에 영향을 미치지 않는다.)GUI
가 나타나면 가장 먼저 만나는 화면은 바탕화면이다.GUI
의 탐색기(파인더)로 열 수 있다.nautilus .
mkdir
을 통해 생성한 폴더 "helloWorld"에 진입하기 위해 GUI
에서는 마우스를 사용한다.Enter
(엔터 키)를 눌러 폴더에 진입할 수 있다.cd
는 change directory의 약자로, 프롬프트로 상호작용하는 폴더를 다른 폴더로 변경한다는 의미이다.pwd
를 사용해 현재 위치를 확인하고, 명령어 ls
를 이용해 helloWorld 폴더를 확인해보자.cd
를 이용해 helloWorld 폴더로 진입한 뒤, 명령어 pwd
를 이용해 현재 위치를 확인하자.pwd # 현재 위치를 확인
ls # 현재 위치의 모든 폴더와 파일을 확인
cd # 폴더 helloworld로 진입
pwd # 현재 위치를 확인
touch
라는 명령어를 사용한다.touch hi.txt
cat
은 파일의 내용을 터미널에 출력하는 명령어이다.CLI
에서 확인해보자.cat
으로 GUI
를 이용해 작성한 내용을 확인한다.cat hi.txt
rm
은 remove의 약자로, 폴더나 파일을 삭제할 때 사용한다.mkdir hello
cd hello # 폴더 hello로 진입합니다.
pwd # 현재 위치를 확인합니다.
mkdir bye
touch bye.txt
ls # 폴더와 파일을 출력합니다.
rm
으로 파일을 삭제해보자.rm bye.txt
ls
rm bye
ls
rm
은 단일 파일을 삭제할 수 있지만 폴더를 삭제하려면 옵션 -rf
을 이용해야 한다.rm -rf bye
ls # 이제 아무것도 출력되지 않는다.
r
은 "recursive"를 뜻하고, 폴더를 지울 때 사용한다.f
는 "force"를 뜻하고, 질문을 받지 않고 지울 때 사용한다.mv
는 move의 약자로, 폴더나 파일을 이동할 때 사용한다.rm
으로 삭제한 폴더 "bye"와 파일 "bye.txt"를 다시 생성했다.mkdir bye # bye 폴더를 생성한다.
touch bye.txt # bye.txt 파일을 생성한다.
mv
를 통해 파일 "bye.txt"를 폴더 "bye"로 옮긴다.mv bye.txt bye/
ls
mv
뒤에는 순서대로 폴더나 파일의 이름
도착 폴더의 이름
를 입력한다.cd bye
ls
mv
를 이용하면, 폴더나 파일의 이름을 변경할 수도 있다.ls # 현재 폴더에 있는 폴더나 파일을 출력한다.
# bye.txt 파일이 출력된다.
mv bye.txt helloWorld.txt
ls
mv
뒤에는 순서대로 변경할 폴더나 파일의 이름
변경하고자 하는 파일의 이름
를 입력한다.cp
는 copy의 약자로, 폴더나 파일을 복사할 때 사용한다.ls
# helloWorld.txt 가 출력된다.
cp helloWorld.txt hiComputer.txt
ls
# helloWorld.txt hiComputer.txt 가 출력된다.
cp
뒤에는 순서대로 원본 파일 이름
복사할 파일 이름
를 입력한다.cd
를 이용해 상위 폴더 "hello"로 이동한다.cd ..
ls
# bye가 출력됩니다.
pwd
# /home/[username]/helloWorld/hello
CLI
에서 .
은 현재 폴더를 나타낸다...
은 현재 폴더(.
)을 기준으로, 앞에 .
이 하나 더 붙는다...
은 현재 폴더보다 앞에 있는 폴더를 가리킨다.cp
를 그냥 사용하면, 명령어 rm
으로 폴더를 삭제할 때처럼cp
에 옵션은, -rf
옵션을 적용한다.-h
또는 --help
와 같은 옵션을 통해 확인할 수 있다.