Pop-Location
Définit l'emplacement actuel sur le dernier emplacement placé sur la pile.
Syntaxe
Pop-Location
[-PassThru]
[-StackName <String>]
[-UseTransaction]
[<CommonParameters>]
Description
L’applet Pop-Location
de commande remplace l’emplacement actuel par l’emplacement le plus récemment envoyé sur la pile à l’aide de l’applet Push-Location
de commande. Vous pouvez afficher un emplacement à partir de la pile par défaut ou d’une pile que vous créez à l’aide d’une Push-Location
commande.
Exemples
Exemple 1 : Passer à l’emplacement le plus récent
PS C:\> Pop-Location
Cette commande définit l'emplacement sur le dernier emplacement ajouté à la pile active.
Exemple 2 : Passer à l’emplacement le plus récent dans une pile nommée
PS C:\> Pop-Location -StackName "Stack2"
Cette commande définit l'emplacement sur le dernier emplacement ajouté à la pile d'emplacements Stack2.
Pour plus d’informations sur les piles d’emplacements, consultez les notes.
Exemple 3 : Passer d’un emplacement à l’autre pour différents fournisseurs
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:\>
Ces commandes utilisent les Push-Location
applets de commande et Pop-Location
les applets de commande pour passer d’un emplacement à l’autre pris en charge par différents fournisseurs PowerShell. Les commandes utilisent l’alias pushd
pour Push-Location
et l’alias popd
pour Pop-Location
.
La première commande envoie (push) l’emplacement actuel du système de fichiers sur la pile et se déplace vers le lecteur HKLM pris en charge par le fournisseur de Registre PowerShell.
La deuxième commande envoie (push) l’emplacement du Registre sur la pile et se déplace vers un emplacement pris en charge par le fournisseur de certificats PowerShell.
Les deux dernières commandes extraient ces emplacements de la pile. La première popd
commande retourne au lecteur de Registre, et la deuxième commande revient au lecteur du système de fichiers.
Paramètres
-PassThru
Transmet un objet qui représente l’emplacement au pipeline. Par défaut, cette applet de commande ne génère aucun résultat.
Type: | SwitchParameter |
Position: | Named |
Valeur par défaut: | None |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
-StackName
Spécifie la pile d'emplacements à partir de laquelle l'emplacement est extrait. Entrez un nom de pile d'emplacements.
Sans ce paramètre, Pop-Location
affiche un emplacement à partir de la pile d’emplacements actuelle. Par défaut, la pile d’emplacements actuelle est la pile d’emplacements par défaut non nommée créée par PowerShell. Pour créer une pile d’emplacements, utilisez le paramètre StackName de l’applet Set-Location
de commande. Pour plus d’informations sur les piles d’emplacements, consultez les notes.
Pop-Location
ne peut pas afficher un emplacement à partir de la pile par défaut sans nom, sauf s’il s’agit de la pile d’emplacements actuelle.
Type: | String |
Position: | Named |
Valeur par défaut: | None |
Obligatoire: | False |
Accepter l'entrée de pipeline: | True |
Accepter les caractères génériques: | False |
-UseTransaction
Inclut la commande dans la transaction active. Ce paramètre est uniquement valide au cours d’une transaction. Pour plus d’informations, consultez about_Transactions.
Type: | SwitchParameter |
Alias: | usetx |
Position: | Named |
Valeur par défaut: | False |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
Entrées
None
Vous ne pouvez pas diriger les objets vers cette applet de commande.
Sorties
None
Par défaut, cette applet de commande ne retourne aucune sortie.
Lorsque vous utilisez le paramètre PassThru , cette applet de commande retourne un objet PathInfo représentant le chemin d’accès actuel après l’opération de l’applet de commande.
Notes
Windows PowerShell inclut les alias suivants pour Pop-Location
:
popd
PowerShell prend en charge plusieurs runspaces par processus. Chaque runspace a son propre répertoire actif.
Ce n’est pas le même que [System.Environment]::CurrentDirectory
. Ce comportement peut être un problème lors de l’appel d’API .NET ou d’exécution d’applications natives sans fournir de chemins d’accès de répertoire explicites.
Même si les applets de commande d’emplacement ont défini le répertoire actif à l’échelle du processus, vous ne pouvez pas en dépendre, car un autre espace d’exécution peut le modifier à tout moment. Vous devez utiliser les applets de commande d’emplacement pour effectuer des opérations basées sur le chemin à l’aide du répertoire de travail actuel spécifique à l’instance d’exécution actuelle.
Une pile est une liste de dernière entrée et de première sortie dans laquelle seul l’élément ajouté le plus récemment est accessible. Vous ajoutez des éléments à une pile dans l'ordre dans lequel vous les utilisez, puis les récupérez pour une utilisation dans l'ordre inverse. PowerShell vous permet de stocker des emplacements de fournisseur dans les piles d’emplacements.
PowerShell crée une pile d’emplacements par défaut sans nom et vous pouvez créer plusieurs piles d’emplacements nommés. Si vous ne spécifiez pas de nom de pile, PowerShell utilise la pile d’emplacements actuelle. Par défaut, l’emplacement par défaut sans nom est la pile d’emplacements actuelle, mais vous pouvez utiliser l’applet Set-Location
de commande pour modifier la pile d’emplacements actuelle.
Pour gérer les piles d’emplacements, utilisez les applets de commande PowerShell *-Location
, comme suit :
Pour ajouter un emplacement à une pile d’emplacements, utilisez l’applet de
Push-Location
commande.Pour obtenir un emplacement à partir d’une pile d’emplacements, utilisez l’applet
Pop-Location
de commande.Pour afficher les emplacements dans la pile d’emplacements actuelle, utilisez le paramètre Stack de l’applet
Get-Location
de commande.Pour afficher les emplacements dans une pile d’emplacements nommés, utilisez le paramètre StackName de l’applet
Get-Location
de commande.Pour créer une pile d’emplacements, utilisez le paramètre StackName de l’applet
Push-Location
de commande. Si vous spécifiez une pile qui n’existe pas,Push-Location
crée la pile.Pour créer une pile d’emplacements, utilisez le paramètre StackName de l’applet
Set-Location
de commande.
La pile d'emplacements par défaut sans nom n'est entièrement accessible que s'il s'agit de la pile d'emplacements active.
Si vous créez une pile d’emplacements nommés dans la pile d’emplacements actuelle, vous ne pouvez plus utiliser les applets de commande ou Pop-Location
les Push-Location
applets de commande pour ajouter ou obtenir des éléments à partir de la pile par défaut ou utiliser l’applet Get-Location
de commande pour afficher les emplacements dans la pile sans nom. Pour rendre la pile sans nom dans la pile actuelle, utilisez le paramètre StackName de l’applet Set-Location
de commande avec une valeur ou $Null
une chaîne vide (""
).
Pop-Location
est conçu pour fonctionner avec les données exposées par n’importe quel fournisseur. Pour répertorier les fournisseurs disponibles dans votre session, tapez Get-PSProvider
. Pour plus d’informations, consultez about_Providers.