Freigeben über


AvoidUsingCmdletAliases

Schweregrad: Warnung

Beschreibung

Ein Alias ist ein alternativer Name oder Spitzname für ein Cmdlet oder für ein Befehlselement, z. B. eine Funktion, ein Skript, eine Datei oder eine ausführbare Datei. Sie können den Alias anstelle des Befehlsnamens in allen PowerShell-Befehlen verwenden.

Es gibt auch implizite Aliase. Wenn PowerShell den Cmdlet-Namen nicht finden kann, wird versucht, Get- als letztes Mittel an den Befehl anzufügen. Daher wird die Verwendung des Befehls verbGet-Verbausgeführt.

Jeder PowerShell-Autor lernt die tatsächlichen Befehlsnamen, aber verschiedene Autoren lernen und verwenden unterschiedliche Aliase. Aliase können das Lesen, Verstehen und Beeinflussen der Verfügbarkeit von Code erschweren.

Wenn Sie den vollständigen Befehlsnamen verwenden, können Sie Ihre Skripts in Zukunft einfacher verwalten.

Die Verwendung der vollständigen Befehlsnamen ermöglicht auch die Syntaxmarkierung in Websites und Anwendungen wie GitHub und Visual Studio Code.

Beheben von Korrekturen

Verwenden Sie den vollständigen Cmdlet-Namen und keinen Alias.

Alias-Zulassungsliste

Um zu verhindern, dass PSScriptAnalyzer Ihre bevorzugten Aliase kennzeichnen, erstellen Sie eine Zulassungsliste der Aliase in Ihrer Einstellungsdatei, und zeigen Sie PSScriptAnalyzer auf die Verwendung der Einstellungsdatei. Wenn Sie z. B. PSScriptAnalyzer beim Kennzeichnen cddeaktivieren möchten, bei dem es sich um einen Alias von Set-Locationhandelt, legen Sie den Dateiinhalt der Einstellungen auf Folgendes fest.

# PSScriptAnalyzerSettings.psd1

@{
    'Rules' = @{
        'PSAvoidUsingCmdletAliases' = @{
            'allowlist' = @('cd')
        }
    }
}

Beispiel

Falsch

gps | Where-Object {$_.WorkingSet -gt 20000000}

Richtig

Get-Process | Where-Object {$_.WorkingSet -gt 20000000}