Udostępnij za pomocą


UnikajusingCmdletAliases

poziom ważności: ostrzeżenie

Opis

Alias jest alternatywną nazwą lub pseudonimem polecenia cmdlet lub elementu polecenia, takim jak funkcja, skrypt, plik lub plik wykonywalny. Możesz użyć aliasu zamiast nazwy polecenia w dowolnych poleceniach programu PowerShell.

Istnieją również niejawne aliasy. Gdy program PowerShell nie może odnaleźć nazwy polecenia cmdlet, spróbuje dołączyć Get- do polecenia w ostateczności. W związku z tym użycie polecenia verb zostanie wykonane Get-Verb.

Każdy autor programu PowerShell uczy się rzeczywistych nazw poleceń, ale różni autorzy uczą się i używają różnych aliasów. Aliasy mogą utrudniać odczytywanie, zrozumienie i wpływ na dostępność kodu.

Użycie pełnej nazwy polecenia ułatwia konserwację skryptów w przyszłości.

Użycie pełnych nazw poleceń umożliwia również wyróżnianie składni w witrynach i aplikacjach, takich jak GitHub i Visual Studio Code.

Jak rozwiązać problem

Użyj pełnej nazwy polecenia cmdlet, a nie aliasu.

Lista dozwolonych aliasów

Aby uniemożliwić PSScriptAnalyzer flagowanie preferowanych aliasów, utwórz listę dozwolonych aliasów w pliku ustawień i wskaż PSScriptAnalyzer, aby użyć pliku ustawień. Aby na przykład wyłączyć PSScriptAnalyzer z flagowania cd, który jest aliasem Set-Location, ustaw zawartość pliku ustawień na następującą wartość.

# PSScriptAnalyzerSettings.psd1

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

Przykład

Błędny

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

Poprawny

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