/ / Comment obtenir le répertoire actuel dans la cmdlet PowerShell? - c #, c # -4.0, powershell

Comment obtenir le répertoire actuel dans la cmdlet PowerShell? - c #, c # -4.0, powershell

Je développe un PowerShell 3.0 cmdlet Utilisation de C # /. Net 4.0 dans Visual Studio 2010. Je souhaite obtenir le répertoire actuel dans PowerShell où l'utilisateur exécute le cmdlet. Mais Directory.GetCurrentDirectory () ne fonctionne pas comme prévu. Dans le code ci-dessous, le résultat est C: UsersAdministrator.

Question: quoi cmdlet le code est utilisé pour obtenir le répertoire actuel de PowerShell?

[System.Management.Automation.Cmdlet(System.Management.Automation.VerbsCommon.Get, "StatusBar")]
public class GetStatusBarCommand : System.Management.Automation.PSCmdlet
{
/// <summary>
/// Provides a record-by-record processing functionality for the cmdlet.
/// </summary>
protected override void ProcessRecord()
{
this.WriteObject(Directory.GetCurrentDirectory());
return;
}
}

Réponses:

21 pour la réponse № 1

Un processus PowerShell peut avoir plusieurs espaces d'exécutionAinsi, un seul répertoire global ne fonctionne pas pour PowerShell. En outre, dans PowerShell, votre répertoire actuel peut se trouver dans le registre et non dans le système de fichiers. Toutefois, vous pouvez accéder au répertoire du système de fichiers à l’aide de l’API PowerShell de la manière suivante:

this.SessionState.Path.CurrentFileSystemLocation