루리코딩 세상

절대 경로와 상대 경로의 차이점 본문

이론

절대 경로와 상대 경로의 차이점

루리딩 2025. 5. 28. 00:52

정의

절대 경로와 상대 경로는 파일이나 웹 리소스의 위치를 나타내는 방식의 차이점을 나타낸다. 절대 경로는 파일의 최상위 디렉토리 부터 시작하여 해당 파일까지의 전체 경로를 지정하며, 상대 경로는 현재 파일의 위치를 기준으로 해당 파일에 도달하는 경로를 지정한다.

 


상대 경로 (Relative Path)

현재 작업 중인 디렉토리를 기준으로 파일이나 폴더의 위치를 나타내는 경로이다. 특징으로는 프로젝트 내부에서 이동할 때 자주 사용되며, 경로가 짧고, 다른 환경에서도 동일한 구조면 잘 작동하는 특징을 갖고있다. 현재 디렉토리에서 상대적인 경로를 지정하는 방식으로, 코드를 이동해도 경로가 변경되지 않아 유지보수가 용이하다.

 

" ./ "표기법

"./"표기법은 상대 경로에서 현재 디렉터리를 나타낸다. 즉 참조하는 파일이나 디렉터리가 현재 작업 디렉터리에 있음을 나타낸다.

" . " 표기법

. 은 현재 디렉토리 .. 은 상위 디렉토리를 의미한다.

"../" 표기법

"../"표기법은 상대 경로에서 상위 디렉터리를 나타낸다. 디렉터리 계층 구조에서 한 단계 위로 이동하는 데 사용된다. 예를 들어 "../File.txt"는 현재 작업 디렉터리의 상위 디렉터리에 있는 파일을 나타낸다.

 

상대 경로를 사용하게 될 경우, 유연성고 이동성이 향상된다. 절대 경로에 의존하지 않으므로 파일 참조를 업데이트하지 않고도 코드나 프로젝트를 쉽게 이동하거나 공유할 수 있다. 또한, 상대 경로를 사용하면 프로젝트 내의 디렉터리를 탐색하고 파일에 액세스하기 더 쉬워진다.

 


절대 경로 (Absolute Path)

시스템의 루트 디렉토리 / 또는 c:| 부터 시작하여 전체 경로를 정확하게 지정한 경로이다. 경로가 명확해서 어느 위치에서 실행하더라도 접근이 가능하다. 시스템에 따라 경로가 다를 수도 있다. 절대 경로는 스크립트, 애플리케이션 및 명령에서 파일을 정확하게 참조하고 원하는 리소스를 정확하게 식별하고 액세스하는 데 필수적이다. 즉 파일 참조의 확실성을 제공함에 있어서 사용해야하는 경우가 생긴다.

절대 경로를 수동으로 구성할 때에는 슬래시(/)로 표시되는 루트 디렉토리부터 시작한다. 그런 다음 경로에 있는 각 디렉터리를 슬래시로 구분하여 대상 파일이나 디렉토리에 도달할 때 까지 나열한다. 철자와 대소문자를 정확하게 입력해야되는 주의점이 있다.

 - 절대 경로에는 공백이나 특수 문자가 포함될 수 있다.

 - 다양한 시스템 및 애플리케이션과 호환성을 위해 공백이나 특수 문자를 올바르게 처리하는 것이 중요하다.

 - 오류를 방지하기 위해 따옴표로 묶거나 특수 문자를 이스케이프 처리하는 것이 효율적이다.

 

절대 경로의 최대 길이는 운영 체제 및 파일 시스템에 따라 다르다. 예를 들어 Windows 시스템에서는 최대 경로 길이가 일반적으로 260자로 제한된다. 그러나 일부 Win32 애플리케이션 프로그래밍 인터페이스(API)의 유니코드 버전을 사용하여 최대 32,767자까지 더 긴 경로를 지원한다. Unix 기반 시스템은 일반적으로 Windows에 비해 경로 길이 제한이 적다.

 

 


차이점 요약

특징 절대 경로 상대 경로
경로 지정 방식 최상위 디렉토리부터 시작 현재 파일의 위치를 기준으로
경로의 유효성 다른 위치에서도 동일한 파일에 접근 가능 프로젝트 구조가 바뀌면 경로 수정 필요
장점 정확한 파일 위치 지정, 외부 파일 접근에 용이 가독성이 좋음, 프로젝트 이동에 용이하다
단점 경로가 길어질 수 있음, 오타 발생 가능성 파일 위치가 변경되면 경로 수정 필요
예시 /Users /john /documents /image.jph
https://www.examlpe.com/images/logo.png
images/logo.png,
../documents/report.pdf

상대 경로의 활용

상대 경로는 웹 개발에서 특히 유용하다. 프로젝트 구조가 변경되더라도 코드의 경로를 수정할 필요가 없어 유지보수를 용이하게 할 수있다. 또한 이미지, CSS, JAVASCRIPT 등의 리소스 파일에 대한 경로를 지정할 때 상대 경로를 사용하면 서버 환경에 상관없이 해당 리소스가 잘 표시되도록 할 수 있다.

 


찾아본 결과로는 상대 경로를 웹에서만 활용하는 것으로 나타났지만, 코드 내에서 수업 간에 봤을때 코드를 유용하게 사용함에 있어서 절대 경로보다는 상대 경로가 유연성, 활용성을 제공해주어 더욱 활용하기 용이한 것을 보았었다. 다양한 함수형 포인터, 디자인 되어있는 것을 유연하게 사용하는 것이 중요할 듯하다......

'이론' 카테고리의 다른 글

가상화 (假像化, virtualization)  (0) 2025.06.03
인스턴스(Instance)란?  (0) 2025.05.30
디렉토리(Directory)란?  (1) 2025.05.28
PCH(Platform Controller Hub, PCH) 플랫폼 컨트롤러 허브  (1) 2025.05.27
해시코드(Hashcode)  (1) 2025.05.27