Pop-Location

Cambia la ubicación actual a la última ubicación insertada en la pila.

Syntax

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

Description

El Pop-Location cmdlet cambia la ubicación actual a la ubicación que se ha insertado más recientemente en la pila mediante el Push-Location cmdlet . Puede abrir una ubicación desde la pila predeterminada o desde una pila que cree mediante un Push-Location comando .

Ejemplos

Ejemplo 1: Cambiar a la ubicación más reciente

PS C:\> Pop-Location

Este comando cambia su ubicación a la última ubicación añadida a la pila actual.

Ejemplo 2: Cambiar a la ubicación más reciente en una pila con nombre

PS C:\> Pop-Location -StackName "Stack2"

Este comando cambia su ubicación a la última ubicación añadida a la pila de ubicaciones Stack2.

Para obtener más información sobre las pilas de ubicación, vea notas.

Ejemplo 3: Traslado entre ubicaciones para distintos proveedores

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:\>

Estos comandos usan los Push-Location cmdlets y Pop-Location para moverse entre ubicaciones compatibles con distintos proveedores de PowerShell. Los comandos usan el pushd alias para Push-Location y el popd alias para Pop-Location.

El primer comando inserta la ubicación actual del sistema de archivos en la pila y se mueve a la unidad HKLM compatible con el proveedor del Registro de PowerShell.

El segundo comando inserta la ubicación del Registro en la pila y se mueve a una ubicación compatible con el proveedor de certificados de PowerShell.

Los dos últimos comandos extraen estas ubicaciones de la pila. El primer popd comando vuelve a la unidad del Registro y el segundo comando vuelve a la unidad del sistema de archivos.

Parámetros

-PassThru

Pasa un objeto que representa la ubicación a la canalización. De forma predeterminada, este cmdlet no genera ningún resultado.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-StackName

Especifica la pila de ubicaciones desde la que se extrae la ubicación. Escriba un nombre de pila de ubicaciones.

Sin este parámetro, Pop-Location extrae una ubicación de la pila de ubicaciones actual. De forma predeterminada, la pila de ubicación actual es la pila de ubicaciones predeterminada sin nombre que crea PowerShell. Para que una pila de ubicación sea la pila de ubicaciones actual, use el parámetro StackName del Set-Location cmdlet . Para obtener más información sobre las pilas de ubicación, vea notas.

Pop-Location no puede extraer una ubicación de la pila predeterminada sin nombre a menos que sea la pila de ubicación actual.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

Entradas

None

No se pueden canalizar objetos a este cmdlet.

Salidas

None

De forma predeterminada, este cmdlet no devuelve ninguna salida.

PathInfo

Cuando se usa el parámetro PassThru , este cmdlet devuelve un objeto PathInfo que representa la ruta de acceso actual después de la operación del cmdlet.

Notas

PowerShell incluye los siguientes alias para Pop-Location:

  • Todas las plataformas:
    • popd

PowerShell admite varios espacios de ejecución por proceso. Cada espacio de ejecución tiene su propio directorio actual. Esto no es lo mismo que [System.Environment]::CurrentDirectory. Este comportamiento puede ser un problema al llamar a las API de .NET o ejecutar aplicaciones nativas sin proporcionar rutas de acceso de directorio explícitas.

Incluso si los cmdlets de ubicación establecieron el directorio actual de todo el proceso, no puede depender de él porque otro espacio de ejecución podría cambiarlo en cualquier momento. Debe usar los cmdlets de ubicación para realizar operaciones basadas en rutas de acceso mediante el directorio de trabajo actual específico del espacio de ejecución actual.

Una pila es una lista en la que solo se puede acceder al elemento agregado más recientemente. Los elementos se agregan en el orden en que se utilizan y luego se recuperan para su uso en el orden inverso. PowerShell le permite almacenar ubicaciones de proveedor en pilas de ubicaciones.

PowerShell crea una pila de ubicación predeterminada sin nombre y puede crear varias pilas de ubicación con nombre. Si no especifica un nombre de pila, PowerShell usa la pila de ubicación actual. De forma predeterminada, la ubicación predeterminada sin nombre es la pila de ubicaciones actual, pero puede usar el Set-Location cmdlet para cambiar la pila de ubicación actual.

Para administrar las pilas de ubicación, use los cmdlets de PowerShell *-Location , como se indica a continuación:

  • Para agregar una ubicación a una pila de ubicaciones, use el Push-Location cmdlet .

  • Para obtener una ubicación desde una pila de ubicaciones, use el Pop-Location cmdlet .

  • Para mostrar las ubicaciones en la pila de ubicaciones actual, use el parámetro Stack del Get-Location cmdlet .

  • Para mostrar las ubicaciones en una pila de ubicaciones con nombre, use el parámetro StackName del Get-Location cmdlet .

  • Para crear una nueva pila de ubicación, use el parámetro StackName del Push-Location cmdlet . Si especifica una pila que no existe, Push-Location crea la pila.

  • Para que una pila de ubicación sea la pila de ubicaciones actual, use el parámetro StackName del Set-Location cmdlet .

La pila de ubicaciones predeterminada sin nombre sólo es accesible en su totalidad cuando es la pila de ubicaciones actual. Si crea una pila de ubicación con nombre en la pila de ubicaciones actual, ya no puede usar los Push-Location cmdlets o Pop-Location para agregar o obtener elementos de la pila predeterminada o usar el Get-Location cmdlet para mostrar las ubicaciones en la pila sin nombre. Para que la pila sin nombre sea la pila actual, use el parámetro StackName del Set-Location cmdlet con un valor de $Null o una cadena vacía ("").

También puede hacer referencia a Pop-Location mediante su alias integrado, popd. Para más información, vea about_Aliases.

Pop-Location está diseñado para trabajar con los datos expuestos por cualquier proveedor. Para enumerar los proveedores disponibles en la sesión, escriba Get-PSProvider. Para obtener más información, consulte about_Providers.