Что такое абсолютный и относительный путь?
Узнайте, что такое файловая система. Как строится абсолютный и относительный путь к файлу, а также чем они отличаются друг от друга. Наглядный мануал для новичков и продвинутых пользователей.
Что такое файловая система и как она устроена?
Файловая система (англ. file system) – это средство для организации хранения файлов на каком-либо носителе в соответствии со строгой иерархией элементов (дисков, папок, файлов и т.д.).
В примере ниже, мы имеем:
- Диск C: на котором размещается папка TopFolder;
- Папка TopFolder содержит папку SubFolder и файл FileInTopFolder.html;
- Папка SubFolder содержит файл FileInSubFolder.html.

Строгая иерархия элементов в файловой системе
Примечание: файловая система представляет собой древовидную структуру. Корнем служит – диск, ветви – папки, а листики – файлы.
В Windows принято обозначать диск одной из букв алфавита, с символом двоеточия (:) на конце. Элементы же файловой системы разделяются символом обратной косой черты (\).
В Unix используется один общий корневой каталог, обозначающийся символом косой черты (/). Диски обозначаются, как и папки. Элементы же файловой системы разделяются символом косой черты (/).
Примечание: в примерах ниже, я буду рассматривать построение абсолютного и относительного пути в MS Windows.
Что такое абсолютный путь к файлу?
Абсолютным (англ. absolute path) считается полный путь к файлу или папке от корневого (зачастую, диска) элемента файловой системы.
В примере ниже, абсолютный путь к файлу FileInTopFolder.html начинается с корневого элемента файловой системы – диска C:, потом идёт папка TopFolder и заканчивается всё именем файла.
абсолютный путь к файлу
Абсолютный путь к файлу
Примечание: абсолютный путь предпочтителен в том случае, когда не планируется перемещение файлов и/или папок.
Что такое относительный путь к файлу?
Относительным (англ. relative path) считается путь к одному из элементов файловой системы относительно места расположения другого элемента файловой системы.
В примере ниже, относительный путь к файлу FileInSubFolder.html от файла FileInTopFolder.html проходит через папку SubFolder и заканчивается именем файла.
относительный путь к файлу
Относительный путь к файлу
Это пример относительного пути от выше стоящего файла к ниже стоящему файлу по иерархии файловой системы.
Для того чтобы указать путь от ниже стоящего файла к выше стоящему файлу по иерархии файловой системы нужно использовать «выход из папки» имеющий имя из двух точек (..).
В примере ниже, относительный путь к файлу FileInTopFolder.html от файла FileInSubFolder.html осуществляется через «выход» из папки SubFolder и заканчивается именем файла.
выход из папки
выход из папки
Примечание: относительный путь предпочтителен в том случае, когда планируется перемещение файлов и/или папок, но с сохранением их иерархии.