Pop-Location
Изменяет текущее расположение в расположении, в последнее время отправленное на стек.
Синтаксис
Default (по умолчанию)
Pop-Location
[-PassThru]
[-StackName <String>]
[<CommonParameters>]
Описание
Командлет Pop-Location изменяет текущее расположение в последнее время, отправленное в стек с помощью командлета Push-Location. Вы можете просмотреть расположение из стека по умолчанию или из стека, созданного с помощью команды Push-Location.
Примеры
Пример 1. Изменение последнего расположения
PS C:\> Pop-Location
Эта команда изменяет расположение в расположение, добавленное в текущий стек.
Пример 2. Изменение последнего расположения в именованном стеке
PS C:\> Pop-Location -StackName "Stack2"
Эта команда изменяет расположение в расположение, добавленное в стек расположений Stack2.
Дополнительные сведения о стеках расположений см. в заметках.
Пример 3. Перемещение между расположениями для разных поставщиков
PS C:\> pushd HKLM:\Software\Microsoft\PowerShell
PS HKLM:\Software\Microsoft\PowerShell> pushd Cert:\LocalMachine\TrustedPublisher
PS Cert:\LocalMachine\TrustedPublisher> popd
PS HKLM:\Software\Microsoft\PowerShell> popd
PS C:\>
Эти команды используют командлеты Push-Location и Pop-Location для перемещения между расположениями, поддерживаемыми различными поставщиками PowerShell. Команды используют псевдоним pushd для Push-Location и псевдоним popd для Pop-Location.
Первая команда отправляет текущее расположение файловой системы в стек и перемещается на диск HKLM, поддерживаемый поставщиком реестра PowerShell.
Вторая команда отправляет расположение реестра в стек и перемещается в расположение, поддерживаемое поставщиком сертификатов PowerShell.
Последние две команды всплывают из этих расположений из стека. Первая команда popd возвращается на диск реестра, а вторая команда возвращается на диск файловой системы.
Параметры
-PassThru
Передает объект, представляющий расположение конвейера. По умолчанию этот командлет не создает выходные данные.
Свойства параметра
| Тип: | SwitchParameter |
| Default value: | None |
| Поддерживаются подстановочные знаки: | False |
| DontShow: | False |
Наборы параметров
(All)
| Position: | Named |
| Обязательно: | False |
| Значение из конвейера: | False |
| Значение из конвейера по имени свойства: | False |
| Значение из оставшихся аргументов: | False |
-StackName
Указывает стек расположения, из которого находится расположение. Введите имя стека расположения.
Без этого параметра Pop-Location выводит расположение из текущего стека расположений. По умолчанию текущий стек расположений — это неназванный стек расположений по умолчанию, который создает PowerShell. Чтобы сделать стек расположения текущим стеком расположений, используйте параметр StackName командлета Set-Location. Дополнительные сведения о стеках расположений см. в заметках.
Pop-Location не удается найти расположение из неназванного стека по умолчанию, если он не является текущим стеком расположений.
Свойства параметра
| Тип: | String |
| Default value: | None |
| Поддерживаются подстановочные знаки: | False |
| DontShow: | False |
Наборы параметров
(All)
| Position: | Named |
| Обязательно: | False |
| Значение из конвейера: | False |
| Значение из конвейера по имени свойства: | True |
| Значение из оставшихся аргументов: | False |
CommonParameters
Этот командлет поддерживает общие параметры: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction и -WarningVariable. Дополнительные сведения см. в разделе about_CommonParameters.
Входные данные
None
Невозможно передать объекты в этот командлет.
Выходные данные
None
По умолчанию этот командлет не возвращает выходные данные.
PathInfo
При использовании параметра PassThru этот командлет возвращает объект PathInfo, представляющий текущий путь после операции командлета.
Примечания
PowerShell включает следующие псевдонимы для Pop-Location:
- Все платформы:
popd
PowerShell поддерживает несколько пространств выполнения для каждого процесса. Каждое рабочее пространство имеет собственный текущий каталог.
Это не то же самое, что и [System.Environment]::CurrentDirectory. Это может быть проблема при вызове API .NET или выполнении собственных приложений, не предоставляя явные пути к каталогу.
Даже если командлеты расположения установили текущий каталог на уровне процесса, вы не можете зависеть от него, так как другое пространство выполнения может изменить его в любое время. Командлеты расположения следует использовать для выполнения операций на основе пути с помощью текущего рабочего каталога, относяющегося к текущему пространству выполнения.
Стек — это последний, первый список, в котором можно получить доступ только к последнему добавлению элемента. Вы добавляете элементы в стек в порядке их использования, а затем извлекаете их для использования в обратном порядке. PowerShell позволяет хранить расположения поставщиков в стеках расположений.
PowerShell создает неименованный стек расположений по умолчанию, и вы можете создать несколько именованных стеков расположений. Если имя стека не указано, PowerShell использует текущий стек расположений. По умолчанию неназванное расположение по умолчанию — это текущий стек расположений, но можно использовать командлет Set-Location для изменения текущего стека расположений.
Чтобы управлять стеками расположений, используйте командлеты PowerShell *-Location следующим образом:
Чтобы добавить расположение в стек расположений, используйте командлет
Push-Location.Чтобы получить расположение из стека расположений, используйте командлет
Pop-Location.Чтобы отобразить расположения в текущем стеке расположений, используйте параметр Stack командлета
Get-Location.Чтобы отобразить расположения в именованном стеке расположений, используйте параметр StackName командлета
Get-Location.Чтобы создать стек расположений, используйте параметр StackName командлета
Push-Location. Если указать стек, который не существует,Push-Locationсоздает стек.Чтобы сделать стек расположения текущим стеком расположений, используйте параметр StackName командлета
Set-Location.
Неименованный стек расположений по умолчанию полностью доступен только в том случае, если он является текущим стеком расположений.
Если создать стек именованных расположений в текущем стеке расположений, вы больше не сможете использовать командлеты Push-Location или Pop-Location для добавления или получения элементов из стека по умолчанию или использования командлета Get-Location для отображения расположений в неназванном стеке. Чтобы сделать неименованный стек текущим стеком, используйте параметр StackName командлета Set-Location со значением $null или пустой строкой ("").
Вы также можете ссылаться на Pop-Location по встроенному псевдониму, popd. Дополнительные сведения см. в about_Aliases.
Pop-Location предназначен для работы с данными, предоставляемыми любым поставщиком. Чтобы вывести список поставщиков, доступных в сеансе, введите Get-PSProvider. Дополнительные сведения см. в разделе о поставщиках.