Путь относительный и абсолютный – Абсолютный и относительные пути файлов. Абсолютный и относительный путь к файлу в PHP. Относительно данной страницы

Содержание

Абсолютный и относительный путь 2020

Гиперссылки, обычно называемые «связями», по-прежнему остаются одним из наиболее важных аспектов и фундаментальным элементом Всемирной паутины. Это возможность создать ссылку на странице, которая заставляет читателей напрямую следовать или получать доступ к другому контенту внутри документа. Это одна из самых определяющих черт веб-сайтов, особенно для достижения высоких рейтингов. Существует прямая корреляция между количеством ссылок. Ссылки могут быть похожими на слово или кнопку, указывающую на другое место, которое является частью этого веб-сайта, или оно может указывать на контент, который является частью внешних веб-сайтов. Так же легко, как добавлять ссылки на веб-сайты, для веб-дизайнера становится немного сложнее понять концепцию, особенно когда в игру вступают абсолютные и относительные пути.

Что такое Абсолютный Путь?

Абсолютный путь - это путь, который описывает расположение файла или папки независимо от текущего рабочего каталога; на самом деле, это относительно корневого каталога. Он содержит полное расположение файла или каталога, отсюда и название. Он также упоминается как абсолютный путь или полный путь, и он всегда начинается в том же месте, которое является корневым каталогом. Абсолютные пути содержат всю необходимую информацию для поиска ресурсов, обозначенных абсолютным URL-адресом. Абсолютный путь должен использоваться для обращения к сайтам, которые находятся в домене, отличном от вашего домашнего домена.

Что такое относительный путь?

Относительный путь - это путь, который описывает расположение файла или папки относительно текущего рабочего каталога. Его лучше всего использовать для ссылок на сайты, расположенные в одном домене, в идеале на определенных разделах веб-сайтов, в которых документы никогда не меняют отношения друг с другом. В отличие от абсолютных путей относительные пути содержат информацию, относящуюся только к текущему документу внутри одного и того же веб-сайта, что позволяет избежать полного предоставления абсолютного пути. Простыми словами относительный путь относится к пути относительно местоположения текущей веб-страницы.

Разница между абсолютным и относительным путями

Имея в виду

Абсолютный путь, также называемый файловым путем или полным путем, относится к определенному местоположению в файловой системе, независимо от текущего рабочего каталога. Это расположение файла или каталога на компьютере, который содержит корневой каталог и полный список каталогов, который требуется для поиска файла или каталога. Относительный путь, напротив, относится к расположению каталога с использованием текущего каталога в качестве ссылки, что позволяет избежат

Абсолютный относительный путь | Programmirovanie-dla-sсhool

Пока размеры проектов (особенно веб-сайтов) уменьшены и имеют мало страниц, мы можем предположить, что все файлы остаются в одной папке. Однако по мере роста проекта — нам потребуется больше места.

Затем необходимо будет вставлять изображения в разные папки (чтобы все они были в одном месте), и, возможно, будет целесообразно разделить сайт на различные разделы, чтобы все документы одного типа были в контексте.

Поэтому HTML-проекты и веб-сайты организованы в упорядоченные структуры: мы не случайно говорим о дереве сайта , чтобы показать визуализацию структуры в основе сайта.

Поскольку организация сайта в каталогах и подкаталогах является очень обычной вещью, мы должны научиться перемещаться между различными файлами, составляющими сам сайт, чтобы иметь возможность создавать ссылки на самые скрытые документы, маневрируя между структурами. разветвления.

Для этого мы можем использовать два режима:

  • указать абсолютный путь
  • указать относительный путь

HTML веб-ссылка: Абсолютные пути

Описать абсолютный путь означает полностью указать адрес определенного документа, перечислив все каталоги и подкаталоги, через которые мы должны пройти, чтобы достичь его. Чтобы лучше понять, давайте рассмотрим этот адрес:

<a href="https://www.gospodaretsva.com/css/index.html">сайт</a>

Ссылка указывает абсолютный путь и ссылается на конкретный каталог. В этом случае:

Http: //Указывает браузеру использовать протокол просмотра веб-страниц (http)
gospodaretsva.comУказывает на ссылку на сайт gospodaretsva.com
CSS /Указывает, что указанный ресурс находится в папке «css»
index.htmlУказывает, что файл, который будет связан, называется «index.html»

Для упрощения можно также сказать, что абсолютная ссылка — это URL, который мы обычно находим в адресной строке.

Абсолютные пути используются в основном при написании ссылок на ресурсы, расположенные на сторонних сайтах (которые не принадлежат проекту).

HTML-ссылка с относительными путями

Однако часто это относится к документам, расположенным в рамках проекта (или сайта), и — при разработке на нашем компьютере (т.е. «локально») — возможно, у нас еще нет веб-адреса, и мы не знаем, как настроить пути. Тогда полезно понять, как работают относительные пути.

Эти относительные пути относятся к позиции других файлов , чем документ , в котором вы находитесь в данный момент. Чтобы связать две страницы в одном каталоге, просто напишите:

<a href="страница.html"> ссылка на страницу в том же каталоге, что и текущая страница </a>

Давайте теперь окажемся в такой ситуации:

Абсолютные и относительные пути в HTMLАбсолютные и относительные пути в HTML

То есть со страницы index.html мы хотим сослаться на файл interna.html, который находится в каталоге interna, который, в свою очередь, находится внутри каталога prima.

Синтаксис выглядит следующим образом:

<a href="prima/interna/interna.html">Посетите внутреннюю страницу</a>

Теперь давайте посмотрим на противоположный пример: с внутренней страницы мы хотим сослаться на страницу ( index.html) выше двух уровней:

<a href="../../index.html">Посетите внутреннюю страницу</a>

Как можно видеть, следующие общие правила применяются к относительным путям :

  1. Чтобы сослаться на файл, который находится в том же каталоге, просто свяжите имя файла:
<a href="paginaDaLinkare.html">ссылка на страницу</a>

2. Чтобы обратиться к файлу в папке более низкого уровня, чем текущая позиция, просто назовите папку, за которой следует символ /(косая черта), а затем имя файла. По формуле имяПапки/файл.html:

<a href="prima/interna/interna.html">Посетите внутреннюю страницу</a>

Чтобы вернуться на уровень, просто используйте обозначение: ../файл.html

<a href="../../index.html">Посетите внутреннюю страницу</a>

Благодаря этим устройствам мы можем легко перемещаться между каталогами проекта или сайта: чтобы взять другой пример, вы можете вернуться на один уровень выше относительно местоположения файла, выбрать другую папку, а затем выбрать другой файл следующим образом:

../другаяПапка/файл.html

Href: index.html

Если проект находится на сервере Unix (но синтаксис также работает в системах Windows, если они не локальные), эта запись не должна вас удивлять: символ ‘/‘, помещенный в начале адреса, указывает на главный каталог сайт, иначе называемый 

root . Поэтому это <a href="/css/index.html"> еще один способ выражения абсолютных путей на своем сайте.

Еще одна важная вещь, которую нужно знать, это то, что когда сайт подключен к сети, указание индекса в каталоге почти всегда является необязательным. Вместо этого:

https://gospodaretsva.com/css/index.html

просто укажите каталог:

https://gospodaretsva.com/css/

Имя файла рекомендации

Как известно, существует два семейства операционных систем: Windows и Unix (Linux). Эти две операционные системы используют разные способы управления файлами, поэтому необходимо выполнить несколько шагов:

  1. Желательно не оставлять пустые пробелы в именах файлов (пустые пробелы не всегда правильно интерпретируются), лучше устранить эту необходимость с помощью «подчеркивания» (то есть «_»). Например:
    mio_file.html
  2. Прописные и строчные буквы могут иметь значение (в среде Unix они часто делают это), поэтому лучше проверить, как пишутся файлы

Абсолютный и относительный путь к файлам

Как вы знаете, в параметре href тега <a> (<a… href="…"…>) необходимо указывать путь к файлу, на который делается ссылка.
Многие пишут что-то вроде http://somesite.ru/catalog/doc.html. Да, никто не спорит, это работает. Но есть одно "но". Рассмотрим на примере.

Пусть ваш сайт размещался, например, на каком-то бесплатном хостинге и его адрес был следующий: http://fsite.freehosting.ru.
На сервере лежит порядка 100 документов. И вот вы решили перенести свой сайт на другой домен,
пусть это будет платный хостинг в зоне ru: http://site.ru. Что же, везде теперь менять http://fsite.freehosting.ru на http://site.ru?
Да, благодаря таким редакторам как homesite, это возможно. Но это не выход.
Предположим, что прежде чем заливать страницу на сервер, вы проверяете ее работоспособность
на своем домашнем сервере apache (тем, кто еще не знает что такое "домашний сервер" — сюда(Установка и настройка сервера apache), и вместо http://localhost надо везде будет писать http://site.ru. Согласитесь это, по крайней мере, неудобно.

Выход состоит в том, что бы, при указывании пути к файлу, учитывать не его положение на сайте, а его положение на сервере.

Абсолютный путь

Возьмем, к примеру, файл doc.html, который находится по адресу: http://somesite.ru/catalog/doc.html. На сервере, как известно, находится папка www. Как мы видим из адреса, в этой папке находится папка catalog, и уже в ней находится файл doc.html.

Если, при указывании пути к файлу, перед адресом поставить /, то это будет аналогично следующему: корневая_директория_на_севере/www/путь к файлу.
То есть, http://somesite.ru/catalog/doc.html аналогично следующему: /catalog/doc.html.
Итак, когда перед адресом стоит /, то это означает, что "отсчет" начинается с директории www.
Теперь вместо http://localhost/index.html из любого документа можно писать /index.html.
А вот что бы добраться до директории cgi надо писать так: /cgi-bin/путь к файлу.

Пути, созданные способами, описанными выше, называется абсолютными, т.к указывается абсолютный (полный) путь к файлу на сервере.

Относительный путь

Существуют также относительные пути, которые указываются относительно самого документа, откуда идет ссылка.
Например, если в doc.html создать ссылку newcat/new.html, то это подразумевает, что файл new.html находится в каталоге newcat, который, в свою очередь, находится в том же каталоге, что и файл doc.html. Как видите, этот путь указан относительно файла doc.html. Где бы этот файл не находился, путь newcat/new.html будет всегда справедлив, если файл doc.html и каталог newcat будут находиться на одном уровне (т.е. в одном каталоге).

Также относительно какого-то документа можно подняться на директорию вверх. Для этого необходимо написать ../.
Например, есть каталог big, в нем находятся два каталога: primary и secondary. В каталоге primary лежит, уже знакомый нам файл doc.html; а в каталоге secondary находится файл new.html. Для того, чтобы из файла doc.html сделать ссылку на файл new.html, то нужно написать ../secondary/new.html. А вот если каталог big находится в каталоге www, то путь к файлу new.html можно было указать и так: /big/secondary/new.html

Вместо заключения стоит сказать, что использование абсолютных и относительных путей значительно облегчает работу веб мастерам, будь то новичок или профессионал. Так что используйте эту возможность, как говорится, на полную катушку, и старайтесь избегать путей типа http://site.ru/catalog/file.file, или же, по крайней мере, прибегайте к их помощи как можно реже.

Все про относительный путь к файлам

Относительный путь может указывать где находится файл в двух вариантах: относительно корневого каталога или относительно файла (иногда относительно программы которая работает в данный момент).

Путь относительно корневого каталога сайта http://mysite.com будет таким:

/images/file.png

Такую запись нельзя использовать в браузере (т.к. там требуется указание сайта), но можно использовать в скриптах а также на html, php и подобных страницах. Она говорит серверу о том, что файл file.png находится в папке images, которая находится в корне сайта.

Путь относительно корневого каталога всегда начинается со знака "/", который означает, что это корень каталога и выше по директории мы подняться не сможем.

Путь относительно файла или каталога в котором находится работающая программа\скрипт, может начинаться со знака "../"

../images/file.png

Этот знак сообщает, что от исходного файла (или текущей директории программы) нужно подняться на 1 директорию вверх, найти там папку images, а в ней найти file.png.

А вот такая строка делает тоже самое, но только на 2 директории вверх от исходного файла (или текущей директории программы).

../../images/file.png

Еще один наглядный пример - у нас есть сайт (MySite), в нем есть папка Programm в которой находится файл index.php. Путь к картинке file.png относительно файла index.php будет такой:

../images/Files/Images/file.png

Вместо файла index.php может быть файл программы, которая считает за корневую директорию именно ту, где сама программа находится (в нашем случае Programm). В таком случае относительный путь будет таким же (../images/Files/Images/file.png).

Чем относительный отличается от абсолютного пути?

Абсолютный путь показывает точное местонахождение файла, а относительный показывает путь к файлу относительно какой-либо "отправной точки" (файл, программа и т.д.).

Описание путей: абсолютных, относительных, UNC и URL—Справка

Вы сталкиваетесь с путями каждый день для поиска ваших данных и наборов инструментов. В этом разделе представлено детальное описание путей, приведено определение различных видов путей и показан порядок работы с ними в ArcGIS.

пути

Путь (Path)

Путь – это разделенное символами обратной косой черты имя директории или файла. Директория – это тоже самое, что и папка в проводнике Windows.

E:\Data\MyStuff            (path terminating in a directory name)
E:\Data\MyStuff\roads.shp  (path terminating in a file name)

путь

Вы можете столкнуться с двумя написаниями пути: "pathname" и "path name". Все варианты написания пути (Path, pathname и path name) являются синонимами.

Системный путь и путь каталога

ArcGIS оперирует термином "путь каталога" или "путь ArcCatalog". Путь каталога – это путь, распознаваемый только ArcGIS. Например:

D:\Data\Final\Infrastructure.gdb\EastValley\powerlines

относится к классу пространственных объектов powerlines в наборе объектов EastValley файловой базы геоданных Infrastructure. Этот путь не является корректным системным путем с точки зрения операционной системы, поскольку Windows не распознает наборы и классы пространственных данных, расположенные внутри файловой базы геоданных. Само собой, ArcGIS работает с путями каталога.

Рабочая область и базовое имя

Пути каталога состоят из двух частей: рабочей области и базового имени, как показано ниже:

Местоположение

Местоположение (Location) является общим термином (см., например: "Укажите местоположение ваших данных" или "Введите местоположение ваших данных").

Прямые и обратные косые черты

В Windows обратная косая черта (\) используется в качестве разделителя при указании пути. UNIX системы используют прямую косую черту (/). В ArcGIS не имеет значения, какая косая черта используется при указании пути. ArcGIS всегда будет правильно считывать путь, какой бы знак в нем не использовался.

Обратная косая черта при написании скрипта

Языки программирования, уходящие корнями в UNIX и язык C, такие как Python, рассматривают обратную косую черту (\) в качестве управляющего символа. К примеру, \n соответствует возврату каретки. Поскольку пути могут содержать обратные косые черты, необходимо избегать их распознавания как знак перехода. Обычным делом является использование двойной обратной косой черты, например:

thePath = "E:\\data\\telluride\\newdata.gdb\\slopes"

Другой вариант преобразования путей в строки Python с помощью директивы r показан ниже. Благодаря этому Python будет игнорировать обратные косые черты.

thePath = r"E:\data\telluride\newdata.gdb\slopes"

Абсолютные и относительные пути

Абсолютный, или полный путь

Абсолютный (или полный) путь начинается с буквы диска, за которой следует двоеточие, например, D:.

Относительный путь

Относительный путь ссылается на местоположение относительно текущего каталога. Относительные пути используют два специальных символа: точку (.) и двойную точку (..), которые используются для перехода в текущий и родительский каталог, соответственно. Двойные точки используются для перехода на один уровень вверх. Одна точка означает собственно текущую директорию.

В приведенной ниже структуре папок, предположим, что вы воспользовались Проводником Windows для перехода в папку D:\Data\Shapefiles\Soils. После перехода в данный каталог относительный путь будет использовать директорию D:\Data\Shapefiles\Soils в качестве текущей (пока вы не перейдете в новый каталог и он не станет текущей директорией). Текущую директорию иногда называют корневой папкой.

Если вы хотите перейти к папке Landuse из текущей директории (Soils), вам нужно ввести следующий текст в адресную строку Проводника Windows:

Проводник Windows перейдет в папку D:\Data\Shapefiles\Landuse. Другие примеры использования папки D:\Data\Shapefiles\Landuse в качестве текущей представлены ниже:

..               (D:\Data\Shapefiles)
..\..            (D:\Data)
..\..\Final      (D:\Data\Final)
.                (D:\Data\Shapefiles\Landuse - the current directory)
.\..\Soils       (D:\Data\Final\Soils)
..\..\.\Final\..\Shapefiles\.\Landuse  (D:\Data\Shapefiles\Landuse)
Примечание:

Вы не сможете вводить относительные пути (с использованием точки и двойной точки) в приложениях ArcGIS.

Относительный путь не может распространяться на другие диски. К примеру, если ваша текущая папка находится на диске D, вы не можете использовать относительные пути для перехода к какой-либо директории на диске E.

Абсолютные и относительные пути в ArcMap

При создании документа ArcMap (либо ArcScene, либо ArcGlobe) вы можете указать, что сохраняться будут относительные пути. Для установки этой опции выберите Файл (File)>Свойства документа карты (Map Document Properties). Здесь вы можете указать, будете ли вы хранить абсолютные или относительные пути.

При сохранении документа с относительными путями приложение преобразует пути в относительные (используя точку и двойную точку) в зависимости от того, где вы сохранили документ (т.е. от текущей директории). Например, если ваш документ сохранен в

D:\Maps\Posters\Newmap.mxd

и данными одного из слоев являются

D:\Data\Final\Infrastructure.gdb\Streets

то в Newmap.mxd записано следующее:

..\..\Data\Final\Infrastructure.gdb\Streets

Когда вы снова открываете Newmap.mxd, ArcMap преобразует сохраненные относительные пути (с обозначением с помощью точки и двух точек) обратно в абсолютные, которые отображаются как источник данных слоя. Эта конвертация всегда зависит от местоположения документа карты (текущей директории).

Преобразуются только пути, относящиеся к одному диску

Относительные пути не могут менять диски. То есть в случае, если корневой каталог находится на диске D, вы не сможете использовать относительные пути для перехода к директории на диске E. Если вы сохраняете документ карты с использованием относительных путей, преобразованы и сохранены будут только относящиеся к одному и тому же диску.

Подробнее о ссылках на данные в документе карты

Абсолютные и относительные пути в инструментах модели

Так же как и в ArcMap вы можете указывать, что в инструментах модели будут сохраняться относительные пути.

Текущая папка, используемая для относительных путей, это папка, в которой находится соответствующий набор инструментов. Опция относительного пути конвертирует и сохраняет пути к:

  • Данным модели
  • Растровым изображениям модели
  • Используемым в модели инструментам
  • Файлам, на которые ссылаются метаданные инструмента и справка
  • Таблицам стилей
  • Файлам слоя (.lyr), использующимся для условных обозначений
  • Компилированным файлам справки (.chm)

Для сохранения относительных путей щелкните правой кнопкой мыши инструмент модели, выберите Свойства (Properties), а затем перейдите на закладку Общие (General). В нижней части диалогового окна включите опцию Сохранить относительные пути (Store relative path names (instead of absolute paths), как показано ниже.

Преобразуются только пути, относящиеся к одному диску

Относительные пути не могут менять диски. То есть в случае, если корневой каталог находится на диске D, вы не сможете использовать относительные пути для перехода к директории на диске E. Если вы сохраняете вашу модель с использованием относительных путей, преобразованы и сохранены будут только пути, относящиеся к одному и тому же диску.

Абсолютные и относительные пути в инструментах-скриптах

При использовании мастера Добавить скрипт (Add Script)опция сохранения относительных путей появится на первой панели. Вы также можете установить эту опцию, щелкнув правой кнопкой мыши инструмент-скрипт, выбрав Свойства (Properties), а затем закладку Общие (General). В нижней части диалогового окна выберите Сохранить относительные пути (Store relative path names (instead of absolute paths).

Текущая папка, используемая для относительных путей, это папка, в которой находится соответствующий набор инструментов. Опция относительного пути конвертирует и сохраняет пути к:

  • Скрипту
  • Наборам данных, которые используются в свойстве значения по умолчанию
  • Файлам, на которые ссылаются метаданные инструмента и справка
  • Файлам слоя (.lyr), используемым для свойства условных обозначений
  • Компилированным файлам справки (.chm)
  • Таблицам стилей

Преобразуются только пути, относящиеся к одному диску

Относительные пути не могут менять диски. То есть в случае, если корневой каталог находится на диске D, вы не сможете использовать относительные пути для перехода к директории на диске E. Если вы сохраняете ваш инструмент-скрипт с использованием относительных путей, преобразованы и сохранены будут только пути, относящиеся к одному и тому же диску.

Пути в скрипте не преобразуются

Нельзя использовать точку и двойную точку в скриптах. Например, представленная ниже запись работать не будет:

arcpy.AddField_management("..\redlands.mdb\streets", "ref_ID", "long", "9", "#", "#", \
             "refcode", "NULLABLE", "REQUIRED", "#")

т.к. путь ..\redlands.mdb\streets является относительным.

Какой смысл в использовании относительных путей вместо абсолютных?

Использование абсолютных путей характеризуется следующим:

  • Вы можете перемещать документ или набор инструментов в любое местоположение на вашем компьютере и данные будут по-прежнему найдены, когда вы откроете документ или инструмент.
  • На большинстве компьютеров расположение данных обычно не меняется. То есть вы обычно не перемещаете ваши данные из одной папки в другую. Как правило, используются абсолютные пути.
  • Вы можете ссылаться на данные, которые находятся на других дисках.

С использованием относительных путей может понадобиться внесение следующих корректировок:

  • При перемещении документа карты или набора инструментов необходимо перенести также и данные, на которые он ссылается.
  • При передаче документов, наборов инструментов и данных другому пользователю должны использоваться относительные пути. Иначе возникнет необходимость, чтобы компьютер пользователя имел такую же структуру каталогов, как и ваш.

К примеру, возьмем представленную ниже структуру папок. В этом примере D:\Tools\Toolboxes\Toolbox1 содержит инструмент-скрипт D:\Tools\Scripts\MyScript.py.

При использовании абсолютных путей в случае, если вы перемещаете набор инструментов D:\Tools\Toolboxes\Toolbox1 на другой диск, например, в E:\Final\Toolbox1, ArcGIS найдет D:\Tools\Scripts\MyScript.py и все будет прекрасно работать. Если же вы используете относительные пути, ArcGIS не найдет скрипт и инструмент работать не будет. Диалоговое окно инструмента откроется, но после его запуска вы получите сообщение об ошибке: "Скрипт, связанный с этим инструментом, не существует". Вам необходимо открыть свойства инструмента и ввести корректный путь к скрипту.

С другой стороны, если вы работаете с относительными путями, вы можете просто скопировать папку D:\Tools в любое место на любом компьютере и все будет работать. Это не сработает при использовании абсолютных путей, поскольку другой пользователь может скопировать папку в каталог F:\NewTools и путь D:\Tools\Scripts\MyScript.py на его компьютере найден, естественно, не будет.

Заключение

  • Относительные пути не могут менять диски.
  • Абсолютные пути лучше применять, если данные не будут переноситься, как это обычно и происходит на дисках персональных компьютеров.
  • Относительные пути полезно использовать в случае, когда вы передаете документы и данные другому пользователю.
  • Относительные пути используют обозначения точки и двойной точки (. and ..). Вы можете вводить относительные пути с такими обозначениями в Проводнике Windows и командной строке Windows.
  • ArcGIS не позволяет вводить относительные пути с использованием обозначений точки и двойной точки. Чаще в документе и наборе инструментов хранятся относительные пути (после того как вы отметили опцию сохранения относительных путей).
  • Относительные пути "отсчитываются" от текущей папки, являющейся местоположением сохраненного документа или набора инструментов.

Пути UNC

UNC расшифровывается как Universal (или Uniform, или Unified) Naming Convention – Конвенция об универсальных наименованиях, и является синтаксисом для доступа к директориям и файлам в компьютерных сетях. Синтаксис показан ниже:

\\<computer name>\<shared directory>\

дальше следует любое число директорий, в конце указывается имя папки или файла.

Например:

\\pondermatic\public\studyarea.gdb
\\omnipotent\shared_stuff\wednesday\tools

Имя компьютера отделяется с помощью двойной обратной косой черты (\\).

В UNC имя компьютера также называется именем хоста.

Есть несколько правил для путей UNC:

  • Пути UNC не могут содержать меток тома (таких как D).
  • Невозможен переход в директорию выше уровнем, чем общая директория.
  • Опция Сохранять относительные пути (Store relative path names) для документов и инструментов неприменима к путям UNC.

В ArcGIS вы можете использовать путь UNC при любом запросе пути. Это особенно удобно для общедоступных данных в локальной вычислительной сети (LAN). Данные могут храниться на одном компьютере, и любой пользователь, имеющий к нему доступ, может эти данные использовать, пока компьютер не будет выключен или отсоединен от сети.

В Windows возможно открывать доступ к папкам, чтобы другие пользователи в сети могли с ними работать. В ArcCatalog или Проводнике Windows щелкните правой кнопкой мыши Общий доступ и безопасность (Sharing and Security) и следуйте дальнейшим указаниям открывающегося диалогового окна.

URL

URL расшифровывается как Uniform Resource Locator – Универсальный локатор ресурса и уникально описывает адрес любого документа в Интернете. Компонентами URL являются:

  • Протокол, используемый для доступа к ресурсу, такой как HTTP (HyperText Transfer Protocol) или FTP (File Transfer Protocol)
  • Хост (сервер), с которым устанавливается соединение
  • Путь к файлу на хосте

Например:

http://www.esri.com/products.html

Windows Internet Explorer позволяет ввести строку www.esri.com в адресной строке Internet Explorer и тип протокола будет добавлен автоматически http://. Более правильным является явное указание протокола, например, http. Среди других протоколов назовем HTTPS (Secure Hypertext Transfer Protocol), FTP, mailto (адрес электронной почты e-mail) and news (новости Usenet) и т.д.

В ArcGIS вы можете использовать пути URL там, где это является допустимым. В общем, в пользовательском интерфейсе содержатся подсказки, где возможно или необходимо использование URL. При использовании URL в ArcGIS Explorer рекомендуется включать тип протокола как в строке ниже:

вместо

Путь к файлу подключения ArcSDE

Инструменты геообработки используют путь к файлу подключения (.sde) для доступа к данным, хранящимся в базе данных ArcSDE.

D:\Data\Final\Connection to ArcSDE.sde\EastValley\powerlines

Информация о подключения в файле .sde используется для создания подключения к ArcSDE, при этом база геоданных ищет запрашиваемые данные так же как и для файловой и персональной баз геоданных (см. выше).

Связанные разделы

Описание путей: абсолютных, относительных, UNC и URL—Справка

Вы сталкиваетесь с путями каждый день для поиска ваших данных и наборов инструментов. В этом разделе представлено детальное описание путей, приведено определение различных видов путей и показан порядок работы с ними в ArcGIS.

пути

Путь (Path)

Путь – это разделенное символами обратной косой черты имя директории или файла. Директория – это тоже самое, что и папка в проводнике Windows.

E:\Data\MyStuff            (path terminating in a directory name)
E:\Data\MyStuff\roads.shp  (path terminating in a file name)

путь

Вы можете столкнуться с двумя написаниями пути: "pathname" и "path name". Все варианты написания пути (Path, pathname и path name) являются синонимами.

Системный путь и путь каталога

ArcGIS оперирует термином "путь каталога" или "путь ArcCatalog". Путь каталога – это путь, распознаваемый только ArcGIS. Например:

D:\Data\Final\Infrastructure.gdb\EastValley\powerlines

относится к классу пространственных объектов powerlines в наборе объектов EastValley файловой базы геоданных Infrastructure. Этот путь не является корректным системным путем с точки зрения операционной системы, поскольку Windows не распознает наборы и классы пространственных данных, расположенные внутри файловой базы геоданных. Само собой, ArcGIS работает с путями каталога.

Рабочая область и базовое имя

Пути каталога состоят из двух частей: рабочей области и базового имени, как показано ниже:

Местоположение

Местоположение (Location) является общим термином (см., например: "Укажите местоположение ваших данных" или "Введите местоположение ваших данных").

Прямые и обратные косые черты

В Windows обратная косая черта (\) используется в качестве разделителя при указании пути. UNIX системы используют прямую косую черту (/). В ArcGIS не имеет значения, какая косая черта используется при указании пути. ArcGIS всегда будет правильно считывать путь, какой бы знак в нем не использовался.

Обратная косая черта при написании скрипта

Языки программирования, уходящие корнями в UNIX и язык C, такие как Python, рассматривают обратную косую черту (\) в качестве управляющего символа. К примеру, \n соответствует возврату каретки. Поскольку пути могут содержать обратные косые черты, необходимо избегать их распознавания как знак перехода. Обычным делом является использование двойной обратной косой черты, например:

thePath = "E:\\data\\telluride\\newdata.gdb\\slopes"

Другой вариант преобразования путей в строки Python с помощью директивы r показан ниже. Благодаря этому Python будет игнорировать обратные косые черты.

thePath = r"E:\data\telluride\newdata.gdb\slopes"

Абсолютные и относительные пути

Абсолютный, или полный путь

Абсолютный (или полный) путь начинается с буквы диска, за которой следует двоеточие, например, D:.

Относительный путь

Относительный путь ссылается на местоположение относительно текущего каталога. Относительные пути используют два специальных символа: точку (.) и двойную точку (..), которые используются для перехода в текущий и родительский каталог, соответственно. Двойные точки используются для перехода на один уровень вверх. Одна точка означает собственно текущую директорию.

В приведенной ниже структуре папок, предположим, что вы воспользовались Проводником Windows для перехода в папку D:\Data\Shapefiles\Soils. После перехода в данный каталог относительный путь будет использовать директорию D:\Data\Shapefiles\Soils в качестве текущей (пока вы не перейдете в новый каталог и он не станет текущей директорией). Текущую директорию иногда называют корневой папкой.

Если вы хотите перейти к папке Landuse из текущей директории (Soils), вам нужно ввести следующий текст в адресную строку Проводника Windows:

Проводник Windows перейдет в папку D:\Data\Shapefiles\Landuse. Другие примеры использования папки D:\Data\Shapefiles\Landuse в качестве текущей представлены ниже:

..               (D:\Data\Shapefiles)
..\..            (D:\Data)
..\..\Final      (D:\Data\Final)
.                (D:\Data\Shapefiles\Landuse - the current directory)
.\..\Soils       (D:\Data\Final\Soils)
..\..\.\Final\..\Shapefiles\.\Landuse  (D:\Data\Shapefiles\Landuse)
Примечание:

Вы не сможете вводить относительные пути (с использованием точки и двойной точки) в приложениях ArcGIS.

Относительный путь не может распространяться на другие диски. К примеру, если ваша текущая папка находится на диске D, вы не можете использовать относительные пути для перехода к какой-либо директории на диске E.

Абсолютные и относительные пути в ArcMap

При создании документа ArcMap (либо ArcScene, либо ArcGlobe) вы можете указать, что сохраняться будут относительные пути. Для установки этой опции выберите Файл (File)>Свойства документа карты (Map Document Properties). Здесь вы можете указать, будете ли вы хранить абсолютные или относительные пути.

При сохранении документа с относительными путями приложение преобразует пути в относительные (используя точку и двойную точку) в зависимости от того, где вы сохранили документ (т.е. от текущей директории). Например, если ваш документ сохранен в

D:\Maps\Posters\Newmap.mxd

и данными одного из слоев являются

D:\Data\Final\Infrastructure.gdb\Streets

то в Newmap.mxd записано следующее:

..\..\Data\Final\Infrastructure.gdb\Streets

Когда вы снова открываете Newmap.mxd, ArcMap преобразует сохраненные относительные пути (с обозначением с помощью точки и двух точек) обратно в абсолютные, которые отображаются как источник данных слоя. Эта конвертация всегда зависит от местоположения документа карты (текущей директории).

Преобразуются только пути, относящиеся к одному диску

Относительные пути не могут менять диски. То есть в случае, если корневой каталог находится на диске D, вы не сможете использовать относительные пути для перехода к директории на диске E. Если вы сохраняете документ карты с использованием относительных путей, преобразованы и сохранены будут только относящиеся к одному и тому же диску.

Подробнее о ссылках на данные в документе карты

Абсолютные и относительные пути в инструментах модели

Так же как и в ArcMap вы можете указывать, что в инструментах модели будут сохраняться относительные пути.

Текущая папка, используемая для относительных путей, это папка, в которой находится соответствующий набор инструментов. Опция относительного пути конвертирует и сохраняет пути к:

  • Данным модели
  • Растровым изображениям модели
  • Используемым в модели инструментам
  • Файлам, на которые ссылаются метаданные инструмента и справка
  • Таблицам стилей
  • Файлам слоя (.lyr), использующимся для условных обозначений
  • Компилированным файлам справки (.chm)

Для сохранения относительных путей щелкните правой кнопкой мыши инструмент модели, выберите Свойства (Properties), а затем перейдите на закладку Общие (General). В нижней части диалогового окна включите опцию Сохранить относительные пути (Store relative path names (instead of absolute paths), как показано ниже.

Преобразуются только пути, относящиеся к одному диску

Относительные пути не могут менять диски. То есть в случае, если корневой каталог находится на диске D, вы не сможете использовать относительные пути для перехода к директории на диске E. Если вы сохраняете вашу модель с использованием относительных путей, преобразованы и сохранены будут только пути, относящиеся к одному и тому же диску.

Абсолютные и относительные пути в инструментах-скриптах

При использовании мастера Добавить скрипт (Add Script)опция сохранения относительных путей появится на первой панели. Вы также можете установить эту опцию, щелкнув правой кнопкой мыши инструмент-скрипт, выбрав Свойства (Properties), а затем закладку Общие (General). В нижней части диалогового окна выберите Сохранить относительные пути (Store relative path names (instead of absolute paths).

Текущая папка, используемая для относительных путей, это папка, в которой находится соответствующий набор инструментов. Опция относительного пути конвертирует и сохраняет пути к:

  • Скрипту
  • Наборам данных, которые используются в свойстве значения по умолчанию
  • Файлам, на которые ссылаются метаданные инструмента и справка
  • Файлам слоя (.lyr), используемым для свойства условных обозначений
  • Компилированным файлам справки (.chm)
  • Таблицам стилей

Преобразуются только пути, относящиеся к одному диску

Относительные пути не могут менять диски. То есть в случае, если корневой каталог находится на диске D, вы не сможете использовать относительные пути для перехода к директории на диске E. Если вы сохраняете ваш инструмент-скрипт с использованием относительных путей, преобразованы и сохранены будут только пути, относящиеся к одному и тому же диску.

Пути в скрипте не преобразуются

Нельзя использовать точку и двойную точку в скриптах. Например, представленная ниже запись работать не будет:

arcpy.AddField_management("..\redlands.mdb\streets", "ref_ID", "long", "9", "#", "#", \
             "refcode", "NULLABLE", "REQUIRED", "#")

т.к. путь ..\redlands.mdb\streets является относительным.

Какой смысл в использовании относительных путей вместо абсолютных?

Использование абсолютных путей характеризуется следующим:

  • Вы можете перемещать документ или набор инструментов в любое местоположение на вашем компьютере и данные будут по-прежнему найдены, когда вы откроете документ или инструмент.
  • На большинстве компьютеров расположение данных обычно не меняется. То есть вы обычно не перемещаете ваши данные из одной папки в другую. Как правило, используются абсолютные пути.
  • Вы можете ссылаться на данные, которые находятся на других дисках.

С использованием относительных путей может понадобиться внесение следующих корректировок:

  • При перемещении документа карты или набора инструментов необходимо перенести также и данные, на которые он ссылается.
  • При передаче документов, наборов инструментов и данных другому пользователю должны использоваться относительные пути. Иначе возникнет необходимость, чтобы компьютер пользователя имел такую же структуру каталогов, как и ваш.

К примеру, возьмем представленную ниже структуру папок. В этом примере D:\Tools\Toolboxes\Toolbox1 содержит инструмент-скрипт D:\Tools\Scripts\MyScript.py.

При использовании абсолютных путей в случае, если вы перемещаете набор инструментов D:\Tools\Toolboxes\Toolbox1 на другой диск, например, в E:\Final\Toolbox1, ArcGIS найдет D:\Tools\Scripts\MyScript.py и все будет прекрасно работать. Если же вы используете относительные пути, ArcGIS не найдет скрипт и инструмент работать не будет. Диалоговое окно инструмента откроется, но после его запуска вы получите сообщение об ошибке: "Скрипт, связанный с этим инструментом, не существует". Вам необходимо открыть свойства инструмента и ввести корректный путь к скрипту.

С другой стороны, если вы работаете с относительными путями, вы можете просто скопировать папку D:\Tools в любое место на любом компьютере и все будет работать. Это не сработает при использовании абсолютных путей, поскольку другой пользователь может скопировать папку в каталог F:\NewTools и путь D:\Tools\Scripts\MyScript.py на его компьютере найден, естественно, не будет.

Заключение

  • Относительные пути не могут менять диски.
  • Абсолютные пути лучше применять, если данные не будут переноситься, как это обычно и происходит на дисках персональных компьютеров.
  • Относительные пути полезно использовать в случае, когда вы передаете документы и данные другому пользователю.
  • Относительные пути используют обозначения точки и двойной точки (. and ..). Вы можете вводить относительные пути с такими обозначениями в Проводнике Windows и командной строке Windows.
  • ArcGIS не позволяет вводить относительные пути с использованием обозначений точки и двойной точки. Чаще в документе и наборе инструментов хранятся относительные пути (после того как вы отметили опцию сохранения относительных путей).
  • Относительные пути "отсчитываются" от текущей папки, являющейся местоположением сохраненного документа или набора инструментов.

Пути UNC

UNC расшифровывается как Universal (или Uniform, или Unified) Naming Convention – Конвенция об универсальных наименованиях, и является синтаксисом для доступа к директориям и файлам в компьютерных сетях. Синтаксис показан ниже:

\\<computer name>\<shared directory>\

дальше следует любое число директорий, в конце указывается имя папки или файла.

Например:

\\pondermatic\public\studyarea.gdb
\\omnipotent\shared_stuff\wednesday\tools

Имя компьютера отделяется с помощью двойной обратной косой черты (\\).

В UNC имя компьютера также называется именем хоста.

Есть несколько правил для путей UNC:

  • Пути UNC не могут содержать меток тома (таких как D).
  • Невозможен переход в директорию выше уровнем, чем общая директория.
  • Опция Сохранять относительные пути (Store relative path names) для документов и инструментов неприменима к путям UNC.

В ArcGIS вы можете использовать путь UNC при любом запросе пути. Это особенно удобно для общедоступных данных в локальной вычислительной сети (LAN). Данные могут храниться на одном компьютере, и любой пользователь, имеющий к нему доступ, может эти данные использовать, пока компьютер не будет выключен или отсоединен от сети.

В Windows возможно открывать доступ к папкам, чтобы другие пользователи в сети могли с ними работать. В ArcCatalog или Проводнике Windows щелкните правой кнопкой мыши Общий доступ и безопасность (Sharing and Security) и следуйте дальнейшим указаниям открывающегося диалогового окна.

URL

URL расшифровывается как Uniform Resource Locator – Универсальный локатор ресурса и уникально описывает адрес любого документа в Интернете. Компонентами URL являются:

  • Протокол, используемый для доступа к ресурсу, такой как HTTP (HyperText Transfer Protocol) или FTP (File Transfer Protocol)
  • Хост (сервер), с которым устанавливается соединение
  • Путь к файлу на хосте

Например:

http://www.esri.com/products.html

Windows Internet Explorer позволяет ввести строку www.esri.com в адресной строке Internet Explorer и тип протокола будет добавлен автоматически http://. Более правильным является явное указание протокола, например, http. Среди других протоколов назовем HTTPS (Secure Hypertext Transfer Protocol), FTP, mailto (адрес электронной почты e-mail) and news (новости Usenet) и т.д.

В ArcGIS вы можете использовать пути URL там, где это является допустимым. В общем, в пользовательском интерфейсе содержатся подсказки, где возможно или необходимо использование URL. При использовании URL в ArcGIS Explorer рекомендуется включать тип протокола как в строке ниже:

вместо

Путь к файлу подключения ArcSDE

Инструменты геообработки используют путь к файлу подключения (.sde) для доступа к данным, хранящимся в базе данных ArcSDE.

D:\Data\Final\Connection to ArcSDE.sde\EastValley\powerlines

Информация о подключения в файле .sde используется для создания подключения к ArcSDE, при этом база геоданных ищет запрашиваемые данные так же как и для файловой и персональной баз геоданных (см. выше).

Связанные разделы

Что такое абсолютный и относительный путь?

Узнайте, что такое файловая система. Как строится абсолютный и относительный путь к файлу, а также чем они отличаются друг от друга. Наглядный мануал для новичков и продвинутых пользователей.

Что такое файловая система и как она устроена?

Файловая система (англ. 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 и заканчивается именем файла.


выход из папки

Примечание: относительный путь предпочтителен в том случае, когда планируется перемещение файлов и/или папок, но с сохранением их иерархии.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *