Kommentar
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
allvarlighetsgrad: Varning
Beskrivning
Denna regel upptäcker användning av cmdlet-aliaser och utelämnande Get- av prefixet i implicita aliasscenarier. Ett alias är ett alternativt namn eller smeknamn för en cmdlet eller kommandoelement, såsom en funktion, skript, fil eller körbar fil. Även om du kan använda alias istället för hela kommandonamnet, minskar det kodläsbarheten och underhållbarheten.
PowerShell stöder också implicita alias. När ett cmdlet-namn inte hittas läggs PowerShell till Get- kommandot som en reservplan. Till exempel utför Get-Verbtypning verb .
Alias skapar inkonsekvens mellan kodbasar eftersom olika författare lär sig och använder olika alias. Alias kan potentiellt göra kod svår att läsa och förstå i samarbetsmiljöer. Det kan också orsaka problem med manusportabilitet och tillgänglighet.
Att använda fullständiga cmdlet-namn förbättrar kodklarheten, gör skript lättare att underhålla och möjliggör korrekt syntaxmarkering i kodredigerare och plattformar som GitHub och Visual Studio Code. Använd alltid hela cmdlet-namnet istället för alias.
Exempel
Ej överensstämmande
gps | Where-Object {$_.WorkingSet -gt 20000000}
Godkänd
Get-Process | Where-Object {$_.WorkingSet -gt 20000000}
Konfigurera regel
För att undvika PSScriptAnalyzer att flagga dina föredragna alias, skapa en tillåtslista över aliasen i din inställningsfil och peka PSScriptAnalyzer på att använda inställningsfilen. Om du till exempel vill inaktivera PSScriptAnalyzer från att flagga cd, som är ett alias för Set-Location, anger du innehållet i inställningsfilen till följande.
@{
'Rules' = @{
'PSAvoidUsingCmdletAliases' = @{
'allowlist' = @('cd')
}
}
}