Private/Wissen/B_Basic/B7_Aliase.ps1
<#
# Aliase Aliase sind Aufrufkürzel für ein Cmdlet und erleichten die Arbeit nur in der **Console**. - **Hashtags** Aliase gci ls dir ping - **Version** 2020.5.26 #> [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute('PSAvoidUsingCmdletAliases', '')] param() # ! 1. Ein Alias ist ein Aufrufkürzel für ein Cmdlet. # ! 2. Eine Parameter-Vorbelegung ist nicht möglich. # ! 3. Es gibt Default-Aliase, aber es können auch eigene Aliase definiert werden. # ! 4. Default-Aliase können überschrieben werden. # ! 5. Aliase müssen für jede Sitzung erneut definiert werden bzw. werden beim importieren eines Modules definiert. #! Aliase erleichten die Arbeit in der **Console**, sollen **aber nicht in Skripten** verwendet werden da sonst die Lesbarkeit darunter leidet und die Gefahr besteht das Änderungen am Alias-System das Skript unbrauchbar/fehlerhaft machen! # READ Weiterführende und Nachschlage-Informationen: Get-Help -Name 'about_Aliases' -ShowWindow Get-Command -Noun 'Alias' #region Beispiel Lesbarkeit vs. Tastenanschlag-Einsparung Get-Process | Where-Object -Property 'Company' -like -Value 'Microsoft*' | Sort-Object -Property 'Name' | Format-Table -Property 'Name', 'Company' #! vs. gps | ? Company -li Microsoft* | sort Name | ft Name, Company #endregion # ? Übersicht aller Aliase: Get-Alias # * oder: Get-Command -CommandType 'Alias' # * oder: Get-ChildItem -Path 'Alias:\' # ? Wie lautet das Cmdlet für den Alias 'ls', 'tnc': Get-Alias -Name 'ls' # ? Welche Aliase gibt es für das Cmdlet 'Get-ChildItem': Get-Alias -Definition 'Get-ChildItem' # ? Eigene Aliase erstellen (PowerShell sticht DOS): Test-NetConnection -ComputerName '127.0.0.1' New-Alias -Name 'ping' -Value 'Test-NetConnection' -Option 'Constant' ping 127.0.0.1 # ! Aliase werden nach Sitzungsende wieder gelöscht. Siehe daher auch: Export-Alias; Import-Alias # ? Welche Cmdlets beschäftigen sich mit Aliase: Get-Command -Noun 'Aliase' # ? Alias werden in einem PSProvider gespeichert/organisiert: Get-ChildItem -Path 'Alias:\' # TIPP - Z.B. die Cmdlets Get-Command (gcm) und Get-Member (gm) sind Cmdlets die i.d.R. nur temporär benutzt werden. Daher lohnt es sich diese zu kennen. #region Parameter-Aliase # ! Für Parameter können auch Aliase definiert sein, diese werden jedoch nicht VOLLSTÄNDIG in der Hilfe angezeigt. # ? Welche es sein können erfahren Sie so: Get-Command -Name 'Get-ChildItem' | Select-Object -ExpandProperty 'Parameters' | Select-Object -ExpandProperty 'Values' | Select-Object -Property 'Name', 'Aliases' #endregion # TODO QUIZ - https://forms.office.com/Pages/ResponsePage.aspx?id=DQSIkWdsW0yxEjajBLZtrQAAAAAAAAAAAAa__Yp1xwFUN0szRzhHTlJKU0M2OFFISThPWDdRSlpOSy4u |