当前位置:网站首页 > 更多 > 玩电脑 > 正文

[玩转系统] Pop-Location (Microsoft.PowerShell.Management)

作者:精品下载站 日期:2024-12-14 02:11:37 浏览:14 分类:玩电脑

Pop-Location (Microsoft.PowerShell.Management)


Pop-Location

模块 :Microsoft.PowerShell.Management

将当前位置更改为最近压入堆栈的位置。

句法

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

描述

Pop-Location cmdlet 将当前位置更改为最近使用 Push-Location cmdlet 推送到堆栈的位置。您可以从默认堆栈或使用 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-LocationPop-Location cmdlet 在不同 PowerShell 提供程序支持的位置之间移动。这些命令对 Push-Location 使用 pushd 别名,对 Pop-Location 使用 popd 别名。

第一个命令将当前文件系统位置推送到堆栈上,并移动到 PowerShell 注册表提供程序支持的 HKLM 驱动器。

第二个命令将注册表位置推送到堆栈并移动到 PowerShell 证书提供程序支持的位置。

最后两个命令将这些位置从堆栈中弹出。第一个 popd 命令返回到注册表驱动器,第二个命令返回到文件系统驱动器。

参数

-PassThru

将表示管道位置的对象传递给管道。默认情况下,此 cmdlet 不生成任何输出。

类型 :

SwitchParameter

位置:

命名

默认值:

None

必需的:

False

接受管道输入:

False

接受通配符:

False

-StackName

指定从中弹出位置的位置堆栈。输入位置堆栈名称。

如果没有此参数,Pop-Location 将从当前位置堆栈中弹出一个位置。默认情况下,当前位置堆栈是 PowerShell 创建的未命名的默认位置堆栈。要使位置堆栈成为当前位置堆栈,请使用 Set-Location cmdlet 的 StackName 参数。有关位置堆栈的更多信息,请参阅注释。

Pop-Location 无法从未命名的默认堆栈中弹出位置,除非它是当前位置堆栈。

类型 :

String

位置:

命名

默认值:

None

必需的:

False

接受管道输入:

True

接受通配符:

False

输入

您无法将对象通过管道传输到此 cmdlet。

输出

默认情况下,此 cmdlet 不返回任何输出。

路径信息

当您使用 PassThru 参数时,此 cmdlet 将返回一个 PathInfo 对象,该对象表示 cmdlet 操作后的当前路径。

笔记

PowerShell 包含以下 Pop-Location 别名:

  • 所有平台:

      popd

    PowerShell 支持每个进程多个运行空间。每个运行空间都有自己的当前目录。这与[System.Environment]::CurrentDirectory不同。当调用 .NET API 或运行本机应用程序而不提供显式目录路径时,此行为可能会出现问题。

    即使位置 cmdlet 确实设置了进程范围的当前目录,您也不能依赖它,因为另一个运行空间可能随时更改它。您应该使用位置 cmdlet 使用特定于当前运行空间的当前工作目录来执行基于路径的操作。

    堆栈是一个后进先出的列表,其中只能访问最近添加的项目。您可以按照使用顺序将项目添加到堆栈中,然后以相反的顺序检索它们以供使用。 PowerShell 允许您将提供者位置存储在位置堆栈中。

    PowerShell 创建一个未命名的默认位置堆栈,您可以创建多个命名位置堆栈。如果不指定堆栈名称,PowerShell 将使用当前位置堆栈。默认情况下,未命名的默认位置是当前位置堆栈,但您可以使用 Set-Location cmdlet 更改当前位置堆栈。

    要管理位置堆栈,请使用 PowerShell *-Location cmdlet,如下所示:

    • 要将位置添加到位置堆栈,请使用 Push-Location cmdlet。

    • 要从位置堆栈中获取位置,请使用 Pop-Location cmdlet。

    • 要显示当前位置堆栈中的位置,请使用 Get-Location cmdlet 的 Stack 参数。

    • 要显示命名位置堆栈中的位置,请使用 Get-Location cmdlet 的 StackName 参数。

    • 要创建新的位置堆栈,请使用 Push-Location cmdlet 的 StackName 参数。如果您指定的堆栈不存在,Push-Location 将创建该堆栈。

    • 要将位置堆栈设为当前位置堆栈,请使用 Set-Location cmdlet 的 StackName 参数。

    未命名的默认位置堆栈仅当它是当前位置堆栈时才完全可访问。如果将命名位置堆栈设为当前位置堆栈,则无法再使用 Push-LocationPop-Location cmdlet 从默认堆栈添加或获取项目,或者使用 Get-Location cmdlet 显示未命名堆栈中的位置。要使未命名堆栈成为当前堆栈,请使用 Set-Location cmdlet 的 StackName 参数,并将其值设置为 $Null 或空字符串(“”)。

    您还可以通过其内置别名 popd 来引用 Pop-Location。有关更多信息,请参阅 about_Aliases。

    Pop-Location 旨在处理任何提供商公开的数据。要列出会话中可用的提供程序,请输入 Get-PSProvider。有关详细信息,请参阅 about_Providers。

    您需要 登录账户 后才能发表评论

    取消回复欢迎 发表评论:

    关灯