Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
livello di gravità : avviso
Descrizione
Questa regola rileva l'uso di alias cmdlet e l'omissione del Get- prefisso negli scenari di alias impliciti. Un alias è un nome o soprannome alternativo per un cmdlet o un elemento di comando, come una funzione, script, file o file eseguibile. Anche se puoi usare alias invece del nome completo del comando, farlo riduce la leggibilità e la manutenibilità del codice.
PowerShell supporta anche gli alias impliciti. Quando non si trova il nome di un cmdlet, PowerShell viene Get- aggiunto al comando come soluzione di riserva. Ad esempio, digitando verb si esegue Get-Verb.
Gli alias creano incoerenze tra le basi di codice perché autori diversi imparano e usano alias differenti. Gli alias possono potenzialmente rendere il codice difficile da leggere e comprendere in ambienti collaborativi. Può anche causare problemi con la portabilità e la disponibilità degli script.
L'uso di nomi completi di cmdlet migliora la chiarezza del codice, rende gli script più facili da mantenere e consente un corretto evidenziamento della sintassi negli editor di codice e nelle piattaforme come GitHub e Visual Studio Code. Usa sempre il nome completo del cmdlet invece degli alias.
Esempio
Non conforme
gps | Where-Object {$_.WorkingSet -gt 20000000}
Compliant
Get-Process | Where-Object {$_.WorkingSet -gt 20000000}
Configurare regola
Per evitare PSScriptAnalyzer di segnalare i tuoi alias preferiti, crea una lista di permessi degli alias nel file delle impostazioni e punta PSScriptAnalyzer a usare il file delle impostazioni. Ad esempio, per disabilitare PSScriptAnalyzer da contrassegnare cd, che è un alias di Set-Location, impostare il contenuto del file di impostazioni sul seguente.
@{
'Rules' = @{
'PSAvoidUsingCmdletAliases' = @{
'allowlist' = @('cd')
}
}
}