Kategorieauswahl

about

PowerShell 5 fehlende Help about Informationen

In PowerShell 5.0 gibt es einen Fehler in update-help. Die „about“-Files werden zwar heruntergeladen, haben jedoch den falschen Namen. Daher werden diese nicht angezeigt, wenn man help about eintippt. Die „about“-Files, haben nur die Dateinamenerweitung .txt müssten aber .help.txt haben.

Lösung:

Get-ChildItem C:\Windows\System32\WindowsPowerShell\v1.0\en-US\*.txt | ? {$_.name -notlike „*.help.txt“} | % {Rename-Item $_.name $_.name.insert($_.name.indexof(„.“),“.help“)}

bzw. für die Deutschen Help-Files:

Get-ChildItem C:\Windows\System32\WindowsPowerShell\v1.0\de-DE\*.txt | ? {$_.name -notlike „*.help.txt“} | % {Rename-Item $_.name $_.name.insert($_.name.indexof(„.“),“.help“)}

Fehler in der Beschreibung der PowerShell von get-help about_Advanced-Funktionen

In PowerShell kann man übergebene Parameter durch die PowerShell selbst überprüfen lassen. Das ist cool! Leider hat sich in der Beschreibung zur Überprüfung von Strings (Texten) ein Fehler in about_Advanced-Funktionen eingeschlichen. Im about File steht:

Param
    (
       [parameter(Mandatory=$true)]
       [String[]]
       [ValidateRange ("Sven", "Monica", "Christian")]
       $UserName
    )
$UserName

Richtig ist:

Param (
            [parameter(Mandatory=$true)]
            [String[]]
            [ValidateSet("Sven", "Monica", "Christian")]
            $UserName
)
$UserName

Achtung!!! Nicht nur das Wort Range ist durch Set auszutauschen, sondern nach dem Wort Set darf auch kein Leerzeichen zu der nachfolgenden ( stehen. Dann funktioniert es auch mit dem Aufruf. Speichern Sie den Textschnipsel z. B. direkt als test.ps1 ab. Wenn Sie dann das Skript mit Parameter starten, gibt’s bei der ersten Variante die gewünschte Fehlermeldung der Shell und in der zweiten ist der übergebene Parameter ja aufgelistet und er wird entsprechend ausgegeben.

.\test.ps1 blabla
.\test.ps1 Sven