Pop-Location

將目前位置改為最近推送到堆疊上的位置。

語法

Default (預設值)

Pop-Location
    [-PassThru]
    [-StackName <String>]
    [<CommonParameters>]

Description

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 cmdlets 來在不同 PowerShell 提供者支援的位置間移動。 指令使用 pushd 別名 為 Push-Locationpopd ,別名為 。Pop-Location

第一個指令會將目前的檔案系統位置推送到堆疊,並移至由 PowerShell 登錄檔提供者支援的 HKLM 磁碟機。

第二個指令會將登錄檔位置推送到堆疊中,並移動到 PowerShell 憑證提供者支援的位置。

最後兩個指令會把這些位置從堆疊中彈出。 第一個 popd 指令會回到登錄檔磁碟機,第二個指令則回到檔案系統磁碟機。

參數

-PassThru

將代表該位置的物件傳遞給管線。 根據預設,此 Cmdlet 不會產生任何輸出。

參數屬性

類型:SwitchParameter
預設值:None
支援萬用字元:False
不要顯示:False

參數集

(All)
Position:Named
必要:False
來自管線的值:False
來自管線按屬性名稱的值:False
來自剩餘引數的值:False

-StackName

指定該位置從哪個堆疊中彈出該位置。 輸入一個位置堆疊名稱。

若無此參數,則 Pop-Location 會從目前位置堆疊中彈出一個位置。 預設情況下,目前的位置堆疊是 PowerShell 建立的未命名預設位置堆疊。 要讓位置堆疊成為目前的位置堆疊,請使用指令碼中的 Set-LocationStackName 參數。 欲了解更多地點堆疊資訊,請參閱 備註。

Pop-Location 除非是目前的地點堆疊,否則無法從未命名的預設堆疊中彈出地點。

參數屬性

類型:String
預設值:None
支援萬用字元:False
不要顯示:False

參數集

(All)
Position:Named
必要:False
來自管線的值:False
來自管線按屬性名稱的值:True
來自剩餘引數的值:False

CommonParameters

此 cmdlet 支援常見參數:-Debug、-ErrorAction、-ErrorVariable、-InformationAction、-InformationVariable、-OutBuffer、-OutVariable、-PipelineVariable、-ProgressAction、-Verbose、-WarningAction 和 -WarningVariable。 如需詳細資訊,請參閱 about_CommonParameters。

輸入

None

您不能將物件透過管道傳送到此 Cmdlet。

輸出

None

根據預設,此 Cmdlet 不會傳回任何輸出。

PathInfo

當你使用 PassThru 參數時,這個 cmdlet 會回傳一個 PathInfo 物件,代表 cmdlet 操作後的當前路徑。

備註

PowerShell 包含下列 Pop-Location的別名:

  • 所有平臺:
    • popd

PowerShell 支援每個程序的多個 Runspace。 每個運行空間都有自己的 目前目錄。 這與 不同。[System.Environment]::CurrentDirectory 當呼叫 .NET API 或執行原生應用程式但未提供明確目錄路徑時,可能會有此問題。

即使 location cmdlets 設定了整個程序的當前目錄,你也不能依賴它,因為其他跑道空間隨時可能改變它。 你應該使用 location cmdlets 來執行目前執行空間特定工作目錄的路徑操作。

堆疊是一種後進先出的清單,只有最近新增的項目才能存取。 你依照使用順序將物品加入堆疊,然後反向取回使用。 PowerShell 讓你能將提供者位置儲存在位置堆疊中。

PowerShell 會建立一個無名的預設位置堆疊,你可以建立多個命名的地點堆疊。 如果你沒有指定堆疊名稱,PowerShell 會使用目前的地點堆疊。 預設情況下,未命名的預設位置是目前的位置堆疊,但你可以用 Set-Location cmdlet 來更改目前的位置堆疊。

要管理位置堆疊,請使用PowerShell *-Location 指令,如下:

  • 要將位置加入位置堆疊,請使用 Push-Location cmdlet。

  • 要從位置堆疊取得位置,請使用 Pop-Location cmdlet。

  • 要顯示目前位置堆疊中的位置,請使用 cmdlet 的 Get-LocationStack 參數。

  • 要顯示命名位置堆疊中的位置,請使用指令碼中的 Get-LocationStackName 參數。

  • 要建立新的位置堆疊,請使用 cmdlet 的 Push-LocationStackName 參數。 如果你指定一個不存在的堆疊,則 Push-Location 會建立該堆疊。

  • 要讓位置堆疊成為目前的位置堆疊,請使用指令碼中的 Set-LocationStackName 參數。

未命名的預設位置堆疊只有在是目前位置堆疊時才會被完全存取。 如果你把命名地點堆疊設為目前的位置堆疊,你就不能再用 Push-Location or Pop-Location 指令匣子來新增或取得預設堆疊中的物品,也不能用 Get-Location cmdlet 顯示非命名堆疊裡的位置。 若要讓未命名堆疊成為目前的堆疊,請使用指令本的 Set-LocationStackName 參數,值為 $null 或空字串("")。

你也可以用其內建別名popd來稱呼Pop-Location。 如需詳細資訊,請參閱 about_Aliases。

Pop-Location 的設計目的是要處理任何提供者所公開的數據。 若要列出工作階段中可用的提供者,請輸入 Get-PSProvider。 如需詳細資訊,請參閱 about_Providers。