Сведения о синтаксисе пути

КРАТКОЕ ОПИСАНИЕ

Описывает полный и относительный форматы имен пути в PowerShell.

ПОДРОБНОЕ ОПИСАНИЕ

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

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

[<provider>::]<drive>:[\<container>[\<subcontainer>...]]\<item>

Заполнитель <поставщика> относится к поставщику PowerShell, через который осуществляется доступ к хранилищу данных. Например, поставщик FileSystem позволяет получить доступ к файлам и каталогам на компьютере. Этот элемент синтаксиса является необязательным и не требуется, так как имена дисков уникальны для всех поставщиков.

Заполнитель <диска> относится к диску PowerShell, который поддерживается определенным поставщиком PowerShell. В случае поставщика FileSystem диски PowerShell сопоставляются с дисками Windows, настроенными в вашей системе. Например, если в системе есть диск A: и диск C:, поставщик FileSystem создает те же диски в PowerShell.

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

После указания контейнера и подконтейнеров необходимо указать имя элемента с обратной косой чертой. Например, полный путь к файлу Shell.dll в каталоге C:\Windows\System32 выглядит следующим образом:

C:\Windows\System32\Shell.dll

В этом случае диск, через который осуществляется доступ к контейнерам, — это диск C:, контейнер верхнего уровня — Windows, подконтейнер — System32 (находится в контейнере Windows), а элемент — Shell.dll.

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

Символ Описание Относительный путь Полный путь.
. Текущее расположение .\Системы c:\Windows\System
.. Родительский элемент текущего расположения .. \Program Files c:\Program Files
\ Корень диска текущего \Program Files c:\Program Files
location
[нет] Специальные символы отсутствуют Система c:\Windows\System

При использовании имени пути в команде вы вводите это имя таким же образом, независимо от того, используете ли вы полное или относительное имя пути. Например, предположим, что текущий рабочий каталог — C:\Windows. Следующая команда Get-ChildItem извлекает все элементы в каталоге C:\Techdocs:

Get-ChildItem \techdocs

Обратная косая черта указывает, что следует использовать корень диска текущего рабочего расположения. Так как рабочий каталог — C:\Windows, корневым каталогом диска является диск C:. Так как каталог techdocs находится вне корневого каталога, необходимо указать только обратную косую черту.

Те же результаты можно достичь с помощью следующей команды:

Get-ChildItem c:\techdocs

Независимо от того, используется ли полное имя пути или относительное имя пути, имя пути важно не только потому, что оно находит элемент, но и потому, что оно однозначно идентифицирует элемент, даже если этот элемент имеет то же имя, что и другой элемент в другом контейнере.

Например, предположим, что у вас есть два файла, каждый из которых называется Results.txt. Первый файл находится в каталоге C:\Techdocs\Jan, а второй — в каталоге C:\Techdocs\Feb. Путь к первому файлу (C:\Techdocs\Jan\Results.txt) и путь ко второму файлу (C:\Techdocs\Feb\Results.txt) позволяют четко различать эти два файла.

СМ. ТАКЖЕ

about_Locations