Unc path что это
UNC пути для доступа к сетевым папкам
Как и к любой папке на локальном жестком диске, к удаленной папке можно обратиться с использованием пути, подчиняющегося соглашению о наименованиях UNC. Путь к такой папке выглядит примерно так:
Этот путь указывает на папку с именем Desktop на компьютере Xander — очевидно, Рабочий стол пользователя по имени Александр. Важно понимать, что локальный путь на компьютере Xander — а именно C:\Users\user1\Desktop — не является путем UNC. Все, что видно, — это имя компьютера и имя общего ресурса, заданное, как рассказывается в разделе «Настройка общего доступа к папке».
Если открыть на Рабочем столе Александра папку Zeppo, то путь изменится: \\\PC\Desktop\123
Таким образом можно не только быстро обращаться к удаленным папкам, указывая путь к ним в адресной строке, но и сохранять подобные пути в обыкновенных ярлыках Windows, при необходимости открывая общие ресурсы парой щелчков мыши. Чтобы создать ярлык, просто перетащите значок, который находится слева в адресной строке, на Рабочий стол.
Доступ к сетевой папке по IP-адресу
Конечно, если Александр переименует свой компьютер или закроет общий доступ к папке Desktop, то ярлык перестанет работать. Но к удаленному компьютеру также можно обратиться по IP-адресу:
С учетом того, что на любом современном маршрутизаторе используется протокол DHCP (Dynamic Host Configuration Protocol, протокол динамической конфигурации узла), изменение IP-адреса компьютера куда вероятнее, чем смена имени.
Работа с универсальным соглашением об именах (UNC Path)
Объяснение UNC-путей в Windows
Universal Naming Convention (UNC) – это система имен, используемая в Microsoft Windows для доступа к общим сетевым папкам и принтерам в локальной сети (LAN).
Поддержка работы с путями UNC в Unix и других операционных системах может быть настроена с использованием технологий кросс-платформенного обмена файлами, таких как Samba.
Синтаксис имени UNC
Имена UNC идентифицируют сетевые ресурсы, используя определенные обозначения. Эти имена состоят из трех частей: имя хост-устройства, имя общего ресурса и необязательный путь к файлу.
Эти три элемента объединяются с помощью обратной косой черты:
Раздел имени хоста
Часть имени хоста имени UNC может состоять из строки сетевого имени, установленной администратором и поддерживаемой службой именования сетей, такой как DNS или WINS, или IP-адресом.
Эти имена хостов обычно относятся к ПК с Windows или к Windows-совместимому принтеру.
Раздел Share-Name
Часть общего имени пути UNC ссылается на метку, созданную администратором или, в некоторых случаях, в операционной системе.
UNC-пути не включают буквы драйверов Windows, только метки, которые могут ссылаться на конкретный диск.
Раздел File_Path
Часть file_path имени UNC ссылается на локальный подкаталог под разделом общего доступа. Эта часть пути не является обязательной.
Если путь_файла не указан, путь UNC просто указывает на папку верхнего уровня общего ресурса.
File_path должен быть абсолютным. Относительные пути не допускаются.
Как работать с путями UNC
Используя имена UNC, вы подключаетесь к папкам в Teela .
Новые общие ресурсы UNC можно создавать с помощью проводника Windows. Просто щелкните правой кнопкой мыши папку и выберите один из параметров меню «Поделиться», чтобы назначить ему имя общего ресурса.
А как насчет других обратных косых черт в Windows?
Вы также можете увидеть обратную косую черту при работе с командами командной строки, такими как:
Альтернативы UNC
С помощью проводника Windows или командной строки DOS и с надлежащими учетными данными безопасности вы можете сопоставить сетевые диски и удаленный доступ к папкам на компьютере по его букве, а не по пути UNC.
Microsoft установила UNC для Windows после того, как системы Unix определили другое соглашение об именах путей. В сетевых путях Unix (включая связанные с Unix и Linux операционные системы, такие как macOS и Android) используются косые черты, а не обратные.
Работа с универсальным соглашением об именах (UNC Path)
Синтаксис имени UNC
Имена UNC идентифицируют сетевые ресурсы, используя определенные обозначения. Эти имена состоят из трех частей: имя хост-устройства, имя общего ресурса и необязательный путь к файлу.
Эти три элемента объединяются с помощью обратной косой черты:
Раздел имени хоста
Эти имена хостов обычно относятся к ПК с Windows или к Windows-совместимому принтеру.
Раздел Share-Name
Часть общего имени пути UNC ссылается на метку, созданную администратором или, в некоторых случаях, в операционной системе.
UNC-пути не включают буквы драйверов Windows, а только метки, которые могут ссылаться на определенный диск.
Раздел File_Path
Часть file_path имени UNC ссылается на локальный подкаталог под разделом общего доступа. Эта часть пути не является обязательной.
Если путь_файла не указан, путь UNC просто указывает на папку верхнего уровня общего ресурса.
File_path должен быть абсолютным. Относительные пути не допускаются.
Как работать с путями UNC
Используя имена UNC, вы подключаетесь к папкам на Teela .
Новые общие ресурсы UNC можно создавать с помощью проводника Windows. Просто щелкните правой кнопкой мыши папку и выберите один из параметров меню «Поделиться», чтобы назначить ему имя общего ресурса.
Форматы путей к файлам в системах Windows
Традиционные пути DOS
Стандартный путь DOS может состоять из трех компонентов:
Если присутствуют все три компонента, путь является абсолютным. Если буква тома или диска не указана и имя каталога начинается с символа разделителя каталогов, такой путь задан относительно корня текущего диска. В противном случае путь задан относительно текущего каталога. В следующей таблице показаны некоторые возможные пути к каталогам и файлам.
В приведенном ниже примере показано различие между абсолютными и относительными путями. Предполагается, что каталог D:\FY2018\ существует и вы не установили какой-либо текущий каталог для диска D:\ из командной строки перед запуском этого примера.
Если вы хотите увидеть комментарии к коду, переведенные на языки, отличные от английского, сообщите нам на странице обсуждения этой проблемы на сайте GitHub.
UNC-пути
UNC-пути (универсальное соглашение об именовании) используются для доступа к сетевым ресурсам и имеют следующий формат:
Ниже приводятся некоторые примеры UNC-путей:
Пути к устройствам DOS
В операционной системе Windows используется унифицированная объектная модель, которая указывает на все ресурсы, включая файлы. Эти пути к объектам доступны из окна консоли и предоставляются на уровень Win32 с использованием специальной папки с символьными ссылками, с которыми сопоставляются устаревшие пути DOS и UNC. Доступ к этой специальной папке осуществляется с использованием синтаксиса пути к устройству DOS, который может иметь одну из приведенных ниже форм:
Помимо использования буквы диска, вы можете указать том с помощью его GUID. Синтаксис будет иметь вид:
Путь к устройству DOS состоит из следующих компонентов:
Описатель пути к устройству ( \\.\ или \\?\ ), который идентифицирует путь как путь к устройству DOS.
Символьная ссылка на «реальный» объект устройства (C: в случае имени диска или Volume
Для UNC-путей к устройствам часть сервера или общего сетевого ресурса образует том. Например, в пути \\?\server1\e:\utilities\\filecomparer\ часть server1\utilities представляет сервер или общий сетевой ресурс. Это важно при вызове такого метода, как Path.GetFullPath(String, String) с сегментами с относительным путем к каталогу, поскольку переход дальше тома невозможен.
Пример. Способы задать ссылку на один и тот же файл
В следующем примере демонстрируются некоторые способы задать ссылку на файл с использованием API в пространстве имен System.IO. В этом примере создается экземпляр объекта FileInfo и используются его свойства Name и Length, чтобы отобразить имя и длину файла.
Нормализация путей
Практически все передаваемые в API Windows пути нормализуются. При нормализации в Windows выполняются следующие действия:
Нормализация осуществляется неявно, но при необходимости вы можете выполнить ее явно, вызвав метод Path.GetFullPath, который создает оболочку для вызова функции GetFullPathName(). Также можно вызвать функцию GetFullPathName() Windows напрямую с помощью P/Invoke.
Идентификация пути
На первом шаге процесса нормализации осуществляется идентификация типа пути. Пути могут относиться к одной из нескольких категорий:
Тип пути определяет, будет ли каким-либо образом применяться текущий каталог. Кроме того, от типа пути зависит применяемый корень.
Работа с устаревшими устройствами
Применение текущего каталога
Канонизация разделителей
Все символы косой черты ( / ) преобразуются в стандартные разделители Windows, то есть символы обратной косой черты ( \ ). Если они присутствуют, последовательность символов косой черты после первых двух таких символов свертывается в один символ косой черты.
Вычисление относительных компонентов
Если обнаруживается одна точка, текущий сегмент удаляется, поскольку он ссылается на текущий каталог.
Если обнаруживаются две точки, удаляются текущий и родительский сегмент, поскольку в этом случае задается ссылка на родительский каталог.
Родительские каталоги удаляются только в том случае, если они не находятся после корня пути. Корень пути зависит от его типа. Это будет диск ( C:\ ) для путей DOS, сервер или общий сетевой ресурс для UNC-путей ( \\Server\Share ) и префикс пути к устройству для путей к устройствам ( \\?\ или \\.\ ).
Удаление знаков
Помимо удаленных ранее разделителей и относительных сегментов во время нормализации также удаляются некоторые дополнительные знаки:
Если сегмент заканчивается одной точкой, эта точка удаляется. (Сегмент, состоящий из одной или двух точек, нормализуется на предыдущем шаге. Сегмент, состоящий из трех или более точек, не нормализуется и фактически представляет собой допустимое имя файла или каталога.)
Если путь не заканчивается разделителем, удаляются все конечные точки и пробелы (U+0020). Если последний сегмент содержит только одну или две точки, к нему применяется приведенное выше правило для относительных компонентов.
Это правило устанавливает, что вы можете создать имя каталога с конечным пробелом, добавив разделитель после пробела.
Создавать имена каталогов или файлов с конечным пробелом нельзя. Наличие конечных пробелов может затруднить или исключить возможность доступа к каталогу. В связи с этим при попытке обработать каталоги или файлы, имена которых содержат конечные пробелы, происходит сбой приложения.
Пропуск нормализации
Как правило, любой путь, передаваемый в API Windows передается в функцию GetFullPathName и нормализуется. Существует одно важное исключение: путь к устройству, который начинается со знака вопроса, а не с точки. Если путь не начинается с последовательности \\?\ (обратите внимание на использование канонической формы с обратной косой чертой), он нормализуется.
Зачем нужно пропускать нормализацию? Существует три основных причины:
Повышение производительности за счет пропуска нормализации в тех случаях, когда нормализация уже выполнена.
Пропуск нормализации и проверки максимальной длины пути является единственным отличием между двумя видами синтаксиса путей к устройствам. В остальных аспектах они идентичны. Пропуск нормализации следует использовать с осторожностью, поскольку в этом случае легко получить пути, при работе с которыми в обычных приложениях будут возникать трудности.
Регистр символов и файловая система Windows
Особенность файловой системы Windows заключается в том, что пользователи и разработчики, имеющие дело с другими операционными системами, могут сталкиваться с проблемами из-за того, что в именах каталогов и путях не учитывается регистр символов. Это значит, что в именах каталогов и файлов сохраняется регистр строк, используемый в момент их создания. Например, вызов метода
Справка
Вы сталкиваетесь с путями каждый день для поиска ваших данных и наборов инструментов. В этом разделе представлено детальное описание путей, приведено определение различных видов путей и показан порядок работы с ними в ArcGIS.
Путь (Path)
Путь – это разделенное символами обратной косой черты имя директории или файла. Директория – это тоже самое, что и папка в проводнике Windows.
Вы можете столкнуться с двумя написаниями пути: «pathname» и «path name». Все варианты написания пути (Path, pathname и path name) являются синонимами.
Системный путь и путь каталога
ArcGIS оперирует термином «путь каталога» или «путь ArcCatalog». Путь каталога – это путь, распознаваемый только ArcGIS. Например:
Рабочая область и базовое имя
Пути каталога состоят из двух частей: рабочей области и базового имени, как показано ниже:
Местоположение
Местоположение (Location) является общим термином (см., например: «Укажите местоположение ваших данных» или «Введите местоположение ваших данных»).
Прямые и обратные косые черты
В Windows обратная косая черта ( \ ) используется в качестве разделителя при указании пути. UNIX системы используют прямую косую черту ( / ). В ArcGIS не имеет значения, какая косая черта используется при указании пути. ArcGIS всегда будет правильно считывать путь, какой бы знак в нем не использовался.
Обратная косая черта при написании скрипта
Языки программирования, уходящие корнями в UNIX и язык C, такие как Python, рассматривают обратную косую черту ( \ ) в качестве управляющего символа. К примеру, \n соответствует возврату каретки. Поскольку пути могут содержать обратные косые черты, необходимо избегать их распознавания как знак перехода. Обычным делом является использование двойной обратной косой черты, например:
Другой вариант преобразования путей в строки Python с помощью директивы r показан ниже. Благодаря этому Python будет игнорировать обратные косые черты.
Абсолютные и относительные пути
Абсолютный, или полный путь
Относительный путь
Относительный путь ссылается на местоположение относительно текущего каталога. Относительные пути используют два специальных символа: точку (.) и двойную точку (..), которые используются для перехода в текущий и родительский каталог, соответственно. Двойные точки используются для перехода на один уровень вверх. Одна точка означает собственно текущую директорию.
Если вы хотите перейти к папке Landuse из текущей директории ( Soils ), вам нужно ввести следующий текст в адресную строку Проводника Windows:
Примечание:
Вы не сможете вводить относительные пути (с использованием точки и двойной точки) в приложениях ArcGIS.
Абсолютные и относительные пути в ArcMap
При сохранении документа с относительными путями приложение преобразует пути в относительные (используя точку и двойную точку) в зависимости от того, где вы сохранили документ (т.е. от текущей директории). Например, если ваш документ сохранен в
и данными одного из слоев являются
то в Newmap.mxd записано следующее:
Преобразуются только пути, относящиеся к одному диску
Абсолютные и относительные пути в инструментах модели
Так же как и в ArcMap вы можете указывать, что в инструментах модели будут сохраняться относительные пути.
Текущая папка, используемая для относительных путей, это папка, в которой находится соответствующий набор инструментов. Опция относительного пути конвертирует и сохраняет пути к:
Преобразуются только пути, относящиеся к одному диску
Абсолютные и относительные пути в инструментах-скриптах
Текущая папка, используемая для относительных путей, это папка, в которой находится соответствующий набор инструментов. Опция относительного пути конвертирует и сохраняет пути к:
Преобразуются только пути, относящиеся к одному диску
Пути в скрипте не преобразуются
Нельзя использовать точку и двойную точку в скриптах. Например, представленная ниже запись работать не будет:
Какой смысл в использовании относительных путей вместо абсолютных?
Использование абсолютных путей характеризуется следующим:
С использованием относительных путей может понадобиться внесение следующих корректировок:
С другой стороны, если вы работаете с относительными путями, вы можете просто скопировать папку D:\Tools в любое место на любом компьютере и все будет работать. Это не сработает при использовании абсолютных путей, поскольку другой пользователь может скопировать папку в каталог F:\NewTools и путь D:\Tools\Scripts\MyScript.py на его компьютере найден, естественно, не будет.
Заключение
Пути UNC
UNC расшифровывается как Universal (или Uniform, или Unified) Naming Convention – Конвенция об универсальных наименованиях, и является синтаксисом для доступа к директориям и файлам в компьютерных сетях. Синтаксис показан ниже:
дальше следует любое число директорий, в конце указывается имя папки или файла.
Имя компьютера отделяется с помощью двойной обратной косой черты ( \\ ).
В UNC имя компьютера также называется именем хоста.
Есть несколько правил для путей UNC:
В ArcGIS вы можете использовать путь UNC при любом запросе пути. Это особенно удобно для общедоступных данных в локальной вычислительной сети (LAN). Данные могут храниться на одном компьютере, и любой пользователь, имеющий к нему доступ, может эти данные использовать, пока компьютер не будет выключен или отсоединен от сети.
В Windows возможно открывать доступ к папкам, чтобы другие пользователи в сети могли с ними работать. В ArcCatalog или Проводнике Windows щелкните правой кнопкой мыши Общий доступ и безопасность (Sharing and Security) и следуйте дальнейшим указаниям открывающегося диалогового окна.
URL расшифровывается как Uniform Resource Locator – Универсальный локатор ресурса и уникально описывает адрес любого документа в Интернете. Компонентами URL являются:
В ArcGIS вы можете использовать пути URL там, где это является допустимым. В общем, в пользовательском интерфейсе содержатся подсказки, где возможно или необходимо использование URL. При использовании URL в ArcGIS Explorer рекомендуется включать тип протокола как в строке ниже: