[ STUDY ]/Linux

[ 모두의 리눅스 ] 파일과 디렉터리

김강니 2025. 1. 6. 16:19

디렉터리

여러 개의 파일을 담아서 정리할 수 잇는 것을 말한다. 윈도우나 맥의 폴더 개념과 동일하다.

 

리눅스의 디렉터리 구조

/ : 루트 디렉터리
    bin/
    dev/
    etc/
    home/
         miyake/
         osumi/
    sbin/
    tmp/
    usr/
         bin/
         lib/
         local/
    var/

 

💡 PATH란?  디렉터리를 구분하기 위해 사용하는 문자로 리눅스에서는 /를 사용하고 윈도우에서는 \를 사용한다.

 

🔍 윈도우와 리눅스의 디렉터리 구조 차이

윈도우와 리눅스는 비슷한 디렉터리 구조를 가지지만, 윈도우에서는 물리 디스크가 2개 있다면 디렉터리 트리도 2개이다.

하지만 리눅스에서는 언제나 시스템 전체에 단 하나의 트리만 가진다.

만약 리눅스에서 디스크가 여러 개 있을때는 루트 디렉터리 어딘가에 해당 디스크의 디렉터리가 연결된다.

이렇게 연결하는 과정을 마운트라고 한다.

 

디렉터리의 역할

🔹/bin

명령어의 실행파일이 배치되어 있다. 특히 시스템과 관련된 중요도가 높은 명령어를 포함한다.

 

🔹/dev

디바이스 파일(디스크, 키보드 등 하드웨어를 다루기 위한 특수 파일)이 배치되어 있다.

 

🔹/etc

리눅스에서 돌아가는 다양한 애플리케이션의 설정 파일과 리눅스 자체의 설정 파일이 배치되어 있다. 

따라서 리눅스를 운영하고 관리할 때 중요한 디렉터리이다.

 

🔹/home

사용자별로 할당되는 홈 디렉터리가 배치되는 디렉터리이다. 예를 들어 사용자 이름이 user라면 /home/user가 홈 디렉터리가 된다.

 

🔹/sbin

/bin와 비슷하게 실행 파일을 포함하는 디렉터리이다.

이 디렉터리에는 관리자용 명령어가 포함되어 있다. ex) shutdown

 

🔹/tmp

/애플리케이션 실행 중 임시로 작업 결과를 파일로 보존할 때 보통 이 디렉터리에 저장한다.

중요한 파일은 이곳에 보관하지 않는 것이 좋다.

 

🔹/usr

/설치한 애플리케이션의 실행 파일, 문서, 라이브러리 등이 이 디렉터리에 포함된다.

 

🔹/var

/애플리케이션 실행 중에 만들어진 데이터나 로그, 메일 등 변화하는 데이터를 저장하기 위한 디렉터리이다.

이곳에는 많은 파일이 기록되므로 용량 관리에 주의해야한다.

 

현재 디렉터리와 pwd

pwd
/home/user

 

user 사용자는 로그인 후 /home/user에 있다.

셸에서 파일을 다룰 때는 현재 디렉터리가 기준이 된다. 따라서 작업을 하기 전에 pwd명령어를 사용해 현재 디렉터리의 위치를 확인하는 것이 좋다.  

 

절대 경로와 상대 경로

절대 경로

절대 경로란 /usr/bin/perl처럼 루트 디렉터리부터 해당파일에 이르는 경로를 표시하는 것을 말한다.

 

상대 경로

상대 경로란 현재 디렉터리의 위치를 기준으로 펴기하는 경로를 말한다.

. 현재 디렉터리
.. 부모 디렉터리

 

디렉터리 이동과 확인 명령어

명령어 기능
pwd 현재 디렉터리 출력
cd 현재 디렉터리 변경 
ls 디렉터리 안의 파일과 디렉터리(자식 디렉터리)를 출력 
*옵션
-l : 파일 이름과 파일의 속성, 상세 정보까지 함께 출력
-a : 숨겨진 파일까지 출력
-F : 파일 이름 뒤에 파일의 종류를 의미하는 기호도 추가해서 출력
--quote-name : 파일 이름을 "로 묶어서 출력한다.
cd ~ or cd(단독사용) ~(틸드)를 사용하여 홈 디렉터리로 이동

 

 

🔍 * 와 ?

경로 확장 기능으로 파일이름의 패턴을 지정할 수 있다. 

기호 의미
*(애스터리스크) 임의의 문자열
?(물음표) 임의의 한 문자