제2장. 리눅스 기본 명령어와 파일 시스템 이해하기
1. CLI와 GUI의 차이 이해하기
리눅스를 배우기 전에 먼저 사용자 인터페이스의 차이를 이해하는 것이 중요합니다.
- GUI (Graphical User Interface): 마우스로 클릭하고 창을 조작하는 방식입니다. 우리가 흔히 사용하는 Windows나 macOS가 대표적입니다.
- CLI (Command Line Interface): 텍스트 기반의 명령어를 입력하여 조작하는 방식입니다. 리눅스는 CLI 환경에서 운영하는 경우가 많으며, 서버나 개발 환경에서 특히 널리 사용됩니다.
CLI는 처음에는 익숙하지 않을 수 있지만, 단순하고 강력하며, 리모트 환경에서도 사용 가능하다는 장점이 있습니다.
2. 명령어의 첫걸음: Hello World
많은 프로그래밍과 운영체제 학습이 그렇듯, 리눅스에서도 가장 기본이 되는 명령어는 “Hello World” 출력입니다.
echo 'hello world'
실행 결과
hello world
echo: 뒤에 입력한 문자열을 화면에 그대로 출력하는 명령어입니다.
이처럼 리눅스 CLI에서는 문자를 입력해서 컴퓨터에게 직접 명령을 내립니다. 하나하나 입력하면서 결과를 확인하는 방식입니다.
3. 현재 디렉토리 확인과 목록 조회
모든 명령어는 “현재 디렉토리” 기준으로 실행됩니다. 먼저 내가 어떤 위치에 있는지 확인해볼까요?
현재 디렉토리 경로 확인
pwd
실행 결과 예시
/home/user
pwd: “Print Working Directory“의 약자로, 현재 위치를 출력합니다.
디렉토리 안의 내용 확인
ls
실행 결과 예시
documents downloads hello_linux
ls: 현재 디렉토리에 있는 파일과 폴더 목록을 보여줍니다.
ls -l
실행 결과 예시
drwxr-xr-x 2 user user 4096 May 18 10:32 hello_linux
-rw-r--r-- 1 user user 0 May 18 10:35 hello.txt
-l옵션을 사용하면 각 항목의 상세 정보(종류, 권한, 소유자, 크기, 수정 시간 등)를 함께 볼 수 있습니다.
ls -al
-a: 숨겨진 파일까지 모두 표시-l: 상세 정보 보기
참고: 대부분의 리눅스 명령어는
명령어 -옵션형태로 옵션을 붙여서 동작을 확장하거나 결과를 조정할 수 있습니다.
4. 디렉토리 만들기
새로운 폴더를 만들고 확인해 봅시다.
mkdir hello_linux
mkdir: “make directory“의 약자로, 폴더(디렉토리)를 새로 생성합니다.
생성 확인
ls
실행 결과 예시
hello_linux
- 방금 만든
hello_linux디렉토리가 목록에 표시됩니다.
5. 빈 파일 만들기
이번에는 비어 있는 파일을 하나 만들어 봅시다.
touch hello.txt
touch: 비어 있는 파일을 생성하거나, 기존 파일의 수정 시간을 갱신하는 명령어입니다.
확인
ls -l
실행 결과 예시
-rw-r--r-- 1 user user 0 May 18 10:35 hello.txt
drwxr-xr-x 2 user user 4096 May 18 10:32 hello_linux
-로 시작하는 줄은 일반 파일,d로 시작하는 줄은 디렉토리를 나타냅니다.- 각 항목의 종류, 권한, 소유자, 파일 크기, 수정 시간 등을 확인할 수 있습니다.
6. 디렉토리 이동 (cd 명령어)
디렉토리를 만들었으면 이제 그 디렉토리 안으로 들어가 볼까요?
cd hello_linux
cd: change directory, 디렉토리를 이동하는 명령어입니다.
현재 위치 확인
pwd
/home/user/hello_linux
팁: 디렉토리 이름을 전부 다 치지 않아도 됩니다.
- 예:
cd hel입력 후Tab키를 누르면 자동완성 됩니다. (cd hel[TAB] → cd hello_linux)
상위(부모) 디렉토리로 이동하는 방법
cd ..: 한 단계 위 디렉토리로 이동cd /home/user: 절대경로를 이용한 이동
경로의 개념
.: 현재 디렉토리..: 부모 디렉토리- 절대경로:
/로 시작, 최상위 루트부터의 전체 경로 (/home/user/hello_linux) - 상대경로: 현재 위치 기준 (
../,./파일명등)
7. 파일 및 디렉토리 삭제 (rm 명령어)
이제 우리가 만든 파일과 디렉토리를 삭제해 봅시다.
rm hello.txt
rm: 파일 삭제 명령어입니다.
성공 시에는 아무 메시지도 출력되지 않습니다.
ls
(hello.txt가 사라진 상태)
디렉토리 삭제 시도
rm hello_linux
rm: cannot remove 'hello_linux': Is a directory
- 오류 메시지가 나타납니다. 리눅스에서는 디렉토리를 삭제할 때는 특별한 옵션이 필요합니다.
디렉토리 삭제 (옵션 사용)
rm -r hello_linux
-r또는--recursive: 디렉토리 내부까지 모두 삭제하는 옵션
리눅스 명령어는 성공하면 조용히 넘어가고, 실패 시에만 오류 메시지를 출력하는 경우가 많습니다.
정리
이번 장에서는 CLI 환경에서 디렉토리와 파일을 만들고, 이동하고, 삭제하는 실습을 진행했습니다.
cd,pwd,rm,rm -r,Tab 자동완성, 경로 개념(절대/상대)까지 익혔습니다. 다음 장에서는 파일 복사, 이동, 사용자 계정 및 권한 개념을 다룰 예정입니다.