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 возвращает сведения об этом файле (если этот файл находится в текущем рабочем расположении).
См. также
PowerShell