Powershell permet l’utilisation d’alias automatiques. C’est très utile pour une ligne de commande mais à éviter dans un script, vous allez comprendre pourquoi.
Exemple avec Test-NetConnection
Prenons par exemple Test-NetConnection, si je regarde l’aide (Test-NetConnection), il n’a pas d’alias sur le paramètre « InformationLevel »
Et pourtant, cette commande:
Test-NetConnection 127.0.0.1 -InformationLevel Quiet
et cette commande:
Test-NetConnection 127.0.0.1 -i Quiet
fonctionnent toutes les deux.
En fait il n’y a pas d’autres paramètres commençant par « i » donc Powershell fait de l’auto-complétion, ça marche aussi avec « in », …
Ca fonctionne aussi sur les autres cmdlets et les fonctions.
Les Common Parameters
Pour être complet, il est nécessaire d’évoquer les Common Parameters
Paramètre | Raccourci |
Debug | db |
ErrorAction | ea |
ErrorVariable | ev |
InformationAction | infa |
InformationVariable | iv |
OutVariable | ov |
OutBuffer | ob |
PipelineVariable | pv |
Verbose | vb |
WarningAction | wa |
WarningVariable | wv |
Exemple:
Test-NetConnection 128.0.0.22 -i Quiet -wa SilentlyContinue -ev $TNCError -vb:$false
Mise en garde
Comme vous l’aurez compris, sur un 1liner c’est super pratique mais dans un script c’est à proscrire car le jour où cette fonctionnalité disparaît ou que un nouveau paramètre apparaît commençant par les mêmes lettres, ça posera problème.
0 commentaire