Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Nivel de gravedad de : advertencia
Descripción
Un alias es un nombre o alias alternativo para un cmdlet o para un elemento de comando, como una función, un script, un archivo o un archivo ejecutable. Puede usar el alias en lugar del nombre del comando en cualquier comando de PowerShell.
También hay alias implícitos. Cuando PowerShell no encuentra el nombre del cmdlet, intentará anexar Get- al comando como último recurso. Por lo tanto, el uso del comando verb ejecutará Get-Verb.
Cada autor de PowerShell aprende los nombres de comandos reales, pero los distintos autores aprenden y usan alias diferentes. Los alias pueden hacer que el código sea difícil de leer, comprender y afectar a la disponibilidad.
El uso del nombre completo del comando facilita el mantenimiento de los scripts en el futuro.
El uso de los nombres de comandos completos también permite resaltar sintaxis en sitios y aplicaciones como GitHub y Visual Studio Code.
Cómo corregir
Use el nombre completo del cmdlet y no un alias.
Lista de permitidos de alias
Para evitar que PSScriptAnalyzer marque sus alias preferidos, cree una lista de permitidos de los alias en el archivo de configuración y apunte PSScriptAnalyzer para usar el archivo de configuración. Por ejemplo, para deshabilitar PSScriptAnalyzer marcar cd, que es un alias de Set-Location, establezca el contenido del archivo de configuración en lo siguiente.
# PSScriptAnalyzerSettings.psd1
@{
'Rules' = @{
'PSAvoidUsingCmdletAliases' = @{
'allowlist' = @('cd')
}
}
}
Ejemplo
Incorrecto
gps | Where-Object {$_.WorkingSet -gt 20000000}
Correcto
Get-Process | Where-Object {$_.WorkingSet -gt 20000000}