about_Locations

Краткое описание

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

Подробное описание

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

Примечание.

PowerShell поддерживает несколько пространств выполнения для каждого процесса. Каждое пространство выполнения имеет собственный текущий каталог. Это не то же самое, что и текущий каталог процесса PowerShell: [System.Environment]::CurrentDirectory

Например, можно задать текущее рабочее расположение следующим образом:

Set-Location C:\Program Files\PowerShell

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

PowerShell поддерживает текущее рабочее расположение для каждого диска, даже если диск не является текущим. Это позволяет получить доступ к элементам из текущего рабочего расположения, ссылаясь только на диск другого расположения. Например, предположим, что текущее рабочее расположение .C:\Windows Теперь предположим, что для изменения текущего HKLM: рабочего расположения на диск используется следующая команда:

Set-Location HKLM:

Хотя текущее расположение теперь является диском реестра, вы по-прежнему можете получить доступ к элементам в C:\Windows каталоге с помощью C: диска, как показано в следующем примере:

Get-ChildItem C:

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

Get-ChildItem C:\Windows

В PowerShell можно использовать Get-Location команду для определения текущего рабочего расположения, а для задания текущего рабочего расположения можно использовать Set-Location команду. Например, следующая команда задает текущее рабочее расположение Windows каталогу C: диска:

Set-Location C:\Windows

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

Get-ChildItem HKLM:\software

В примере команды извлекается список элементов в контейнере HKEY_LOCAL_MACHINE Software hive в реестре.

PowerShell также позволяет использовать специальные символы для представления текущего рабочего расположения и родительского расположения. Чтобы представить текущее рабочее расположение, используйте один период. Чтобы представить родительский элемент текущего рабочего расположения, используйте два периода. Например, в текущем рабочем расположении указывается System подкаталог:

Get-ChildItem .\System

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

Get-ChildItem ..\"Program Files"

В этом случае PowerShell обрабатывает два периода как диск C, поэтому команда извлекает все элементы в каталоге C:\Program Files .

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

Get-ChildItem \Windows

Если вы не указываете путь, начинающийся с имени диска, обратная косая черта (\) или точка (.) при указании имени контейнера или элемента, предполагается, что контейнер или элемент находятся в текущем рабочем расположении. Например, если текущее рабочее расположение имеется C:\Windows, следующая команда возвращает все элементы в каталоге C:\Windows\System :

Get-ChildItem System

Если указать имя файла, а не имя каталога, PowerShell возвращает сведения об этом файле (если этот файл находится в текущем рабочем расположении).

См. также