Public/Get-About.ps1

<#
 
# Get-About
 
Öffnet eine Hilfe-About-Seite nach Auswahl (Out-GridView) in einem neuen Fenster. Nach einem Schlagwort kann gesucht werden.
 
- **Hashtags** UserCmdlet
- **Version** 2020.12.22
 
#>


using namespace System
using namespace System.Management.Automation

Set-StrictMode -Version 'Latest'

function Get-About {
    <#
        .Synopsis
        Öffnet Hilfe-About-Seite per GUI.
 
        .DESCRIPTION
        Öffnet eine Hilfe-About-Seite nach Auswahl (Out-GridView) in einem
        neuen Fenster. Nach einem Schlagwort kann optional gesucht werden.
 
        .PARAMETER Keyword
        About-Seitennamen Suchwort
 
        .EXAMPLE
        Get-About
        Zeigt alle About_-Seiten zur Auswahl an.
 
        .EXAMPLE
        Get-About -Keyword 'function'
        Zeigt alle About_*function*-Seiten zur Auswahl an.
    #>

    [CmdletBinding()]
    [Alias('ga')]
    Param (
        [Parameter(
            Position                        = 0,
            Mandatory                       = $false, # $false ist Default
            ValueFromPipeline               = $true,
            ValueFromPipelineByPropertyName = $true
        )]
        [ValidateLength(0, 15)]
        [String]
        $Keyword = [String]::Empty
    )

    Process {
        Get-Help -Name "about_*$Keyword*" -Category 'HelpFile' | Select-Object -Property 'Name', 'Synopsis', 'Length' | Out-GridView -Title 'About-Seite auswählen' -OutputMode Multiple | ForEach-Object -Process {
                $_.Name | Write-Output
                $_ | Get-Help -ShowWindow
            }
    }
}

Set-StrictMode -Off