about_Comment_Based_Help

Letzte Aktualisierung: Mai 2014

Betrifft: Windows PowerShell 2.0, Windows PowerShell 3.0, Windows PowerShell 4.0, Windows PowerShell 5.0

Einführung hier einfügen.

THEMA

about_Comment_Based_Help

KURZE BESCHREIBUNG

Erläutert, wie kommentarbasierte Hilfethemen für Funktionen und Skripts geschrieben werden.

LANGE BESCHREIBUNG

Sie können kommentarbasierte Hilfethemen für Funktionen und Skripts mit besonderen Hilfekommentar-Schlüsselwörtern schreiben.

Das Get-Help-Cmdlet zeigt kommentarbasierte Hilfe im gleichen Format an wie die Cmdlet-Hilfethemen, die aus XML-Dateien generiert werden. Benutzer können alle Parameter von „Get-Help“ wie „Detailed“, „Full“, „Example“ und „Online“ verwenden, um die Inhalte kommentarbasierter Hilfe anzuzeigen.

Sie können auch XML-basierte Hilfedateien für Funktionen und Skripts schreiben. Um dem Get-Help-Cmdlet zu ermöglichen, die XML-basierte Hilfedatei für eine Funktion oder ein Skript zu finden, verwenden Sie das ExternalHelp-Schlüsselwort. Ohne dieses Schlüsselwort kann „Get-Help“ XML-basierte Hilfethemen für Funktionen oder Skripts nicht finden.

In diesem Thema wird erläutert, wie Hilfethemen für Funktionen und Skripts geschrieben werden. Informationen zur Vorgehensweise beim Anzeigen von Hilfethemen für Funktionen und Skripts, finden Sie unter „Get-Help“.

HINWEIS:

Die Cmdlets „Update-Help“ und „Save-Help“ funktionieren nur bei XML-Dateien. „Update-Help“ unterstützt keine kommentarbasierten Hilfethemen.

HINWEIS ZUR FEHLERBEHANDLUNG:

Standardwerte und ein Wert für „Platzhalterzeichen akzeptieren“ werden nicht in der Parameterattributtabelle angezeigt, wenn sie in der Funktion oder dem Skript definiert sind. Um Benutzern zu helfen, stellen Sie diese Informationen in der Parameterbeschreibung bereit.

SYNTAX FÜR KOMMENTARBASIERTE HILFE

Die Syntax für kommentarbasierte Hilfe lautet wie folgt:

        # .< help keyword>
        # <help content>
 
    -or -

        <#
            .< help keyword>
            < help content>
        #>

Kommentarbasierte Hilfe wird in Form einer Reihe von Kommentaren geschrieben. Sie können ein Kommentarsymbol (#) vor jede Zeile des Kommentars setzen oder mit den Symbolen „<#“ und „#>“ einen Kommentarblock erstellen. Alle Zeilen im Kommentarblock werden als Kommentare interpretiert.

Alle Zeilen in einem kommentarbasierten Hilfethema müssen zusammenhängend sein. Wenn ein kommentarbasiertes Hilfethema auf einen Kommentar folgt, der nicht Teil des Hilfethemas ist, muss mindestens eine Leerzeile zwischen der letzten nicht zur Hilfe gehörenden Kommentarzeile und dem Beginn der kommentarbasierten Hilfe stehen.

Schlüsselwörter definieren jeden Abschnitt der kommentarbasierten Hilfe. Jedem Schlüsselwort der kommentarbasierten Hilfe ist ein Punkt (.) vorangestellt. Die Schlüsselwörter können in beliebiger Reihenfolge auftreten. Bei den Namen der Schlüsselwörter wird Groß-/Kleinschreibung nicht berücksichtigt.

Beispielsweise ist das Schlüsselwort „Description“ einer Beschreibung einer Funktion oder eines Skripts vorangestellt.

        <#
    .Description
            Get-Function displays the name and syntax of all functions in the session.
        #>

Der Kommentarblock muss mindestens ein Schlüsselwort enthalten. Einige Schlüsselwörter, z. B. „EXAMPLE“, können mehrfach im gleichen Kommentarblock auftreten. Der Inhalt der Hilfe für jedes Schlüsselwort beginnt in der Zeile nach dem Schlüsselwort und kann mehrere Zeilen umfassen.

SYNTAX FÜR KOMMENTARBASIERTE HILFE IN FUNKTIONEN

Kommentarbasierte Hilfe für eine Funktion kann an einer von drei Positionen auftreten:

        -- At the beginning of the function body.

        -- At the end of the function body.

        -- Before the Function keyword. There cannot be more than one blank
           line between the last line of the function help and the Function
           keyword.

Zum Beispiel:

        function Get-Function 
        {
            <#
            .< help keyword>
            < help content>
            #>

            <function commands>
        }


    -or -

        function Get-Function 
        {
            <function commands>

            <#
            .< help keyword>
            < help content>
            #>
        }

    -or -

        <#
        .< help keyword>
        < help content>
        #>
        function Get-Function { }

SYNTAX FÜR KOMMENTARBASIERTE HILFE IN SKRIPTS

Kommentarbasierte Hilfe für ein Skript kann an einer der folgenden beiden Positionen im Skript auftreten.

     -- At the beginning of the script file. Script help can be preceded in the
       script only by comments and blank lines.


     -- If the first item in the script body (after the help) is a function
       declaration, there must be at least two blank lines between the end of the
       script help and the function declaration. Otherwise, the help is
       interpreted as being help for the function, not help for the script.


    -- At the end of the script file. However, if the script is signed, place
       Comment-based help at the beginning of the script file. The end of the 
       script is occupied by the signature block.

Zum Beispiel:

        <#
        .< help keyword>
        < help content>
        #>


        function Get-Function { }

    -or-


        function Get-Function { }

        <#
        .< help keyword>
        < help content>
        #>

SYNTAX FÜR KOMMENTARBASIERTE HILFE IN SKRIPTMODULEN

In einem Skriptmodul (.psm1) nutzt kommentarbasierte Hilfe die Syntax für Funktionen, nicht die Syntax für Skripts. Sie können mit der Skriptsyntax keine Hilfe für alle Funktionen bereitstellen, die in einem Skriptmodul definiert sind.

Wenn Sie z. B. das Schlüsselwort „ExternalHelp“ zur Identifizierung der XML-basierten Hilfedateien für die Funktionen in einem Skriptmodul verwenden, müssen Sie jeder Funktion einen ExternalHelp-Kommentar hinzufügen.

    # .ExternalHelp <XML-file-name>
    function <function-name>
    {
        ...
    }

SCHLÜSSELWÖRTER DER KOMMENTARBASIERTEN HILFE

Im Folgenden werden gültige Schlüsselwörter der kommentarbasierten Hilfe aufgeführt. Sie werden in der Reihenfolge aufgeführt, in der sie in der Regel in einem Hilfethema zusammen mit ihrem Verwendungszweck auftreten. Diese Schlüsselwörter können in beliebiger Reihenfolge in der kommentarbasierte Hilfe auftreten, und die Groß-/Kleinschreibung wird bei ihnen nicht berücksichtigt.

.SYNOPSIS

Eine kurze Beschreibung der Funktion oder des Skripts. Dieses Schlüsselwort kann in jedem Thema nur einmal verwendet werden.

.DESCRIPTION

Eine ausführliche Beschreibung der Funktion oder des Skripts. Dieses Schlüsselwort kann in jedem Thema nur einmal verwendet werden.

.PARAMETER <Parametername>

Die Beschreibung eines Parameters. Fügen Sie für jeden Parameter in der Funktions- oder Skriptsyntax ein .PARAMETER-Schlüsselwort hinzu.

Geben Sie den Namen des Parameters und das .PARAMETER-Schlüsselwort in der gleichen Zeile ein. Geben Sie die Parameterbeschreibung in den Zeilen ein, die auf das .PARAMETER-Schlüsselwort folgen. Windows PowerShell interpretiert den gesamten Text zwischen der .PARAMETER-Zeile und dem nächsten Schlüsselwort bzw. dem Ende des Kommentarblocks als Teil der Parameterbeschreibung. Die Beschreibung kann Absatzumbrüche enthalten.

Die Parameter-Schlüsselwörter können in beliebiger Reihenfolge im Kommentarblock auftreten, aber die Funktions- oder Skriptsyntax bestimmt die Reihenfolge, in der die Parameter (und deren Beschreibungen) im Hilfethema auftreten. Um die Reihenfolge zu ändern, ändern Sie die Syntax.

Sie können auch eine Parameterbeschreibung angeben, indem Sie in der Funktions- oder Skriptsyntax einen Kommentar unmittelbar vor den Parametervariablennamen setzen. Wenn Sie sowohl einen Syntaxkommentar als auch ein Parameter-Schlüsselwort verwenden, wird die dem Parameter-Schlüsselwort zugeordnete Beschreibung verwendet, und der Syntaxkommentar wird ignoriert.

.EXAMPLE

Ein Beispielbefehl, der die Funktion oder das Skript verwendet, optional gefolgt von einer Beispielausgabe und einer Beschreibung. Wiederholen Sie dieses Schlüsselwort für jedes Beispiel.

.INPUTS

Die Microsoft .NET Framework-Typen von Objekten, die an die Funktion oder das Skript geleitet werden können. Sie können auch eine Beschreibung der Eingabeobjekte einschließen.

.OUTPUTS

Der .NET Framework-Typ der Objekte, die das Cmdlet zurückgibt. Sie können auch eine Beschreibung der zurückgegebenen Objekte einschließen.

.NOTES

Weitere Informationen über die Funktion oder das Skript.

Der Name eines zugehörigen Themas. Der Wert tritt in der Zeile unter dem .LINE-Schlüsselwort auf, und ihm muss ein Kommentarsymbol (#) vorangestellt werden, oder er muss im Kommentarblock enthalten sein.

Wiederholen Sie das .LINK-Schlüsselwort für jedes verwandte Thema.

Dieser Inhalt wird im Abschnitt „Verwandte Links“ des Hilfethemas angezeigt.

Zum Inhalt des Link-Schlüsselworts kann auch ein Uniform Resource Identifier (URI) gehören, der auf eine Onlineversion des gleichen Hilfethemas verweist. Die Onlineversion wird geöffnet, wenn Sie den Online-Parameter von „Get-Help“ verwenden. Der URI muss mit „http“ oder „https“ beginnen.

.COMPONENT

Technologie bzw. Feature, die/das von Funktion oder Skript verwendet wird, oder womit Funktion oder Skript verknüpft ist. Dieser Inhalt ist vorhanden, wenn der Get-Help-Befehl den Component-Parameter von „Get-Help“ enthält.

.ROLE

Die Benutzerrolle für das Hilfethema. Dieser Inhalt ist vorhanden, wenn der Get-Help-Befehl den Role-Parameter von „Get-Help“ enthält.

.FUNCTIONALITY

Die beabsichtigte Verwendung der Funktion. Dieser Inhalt ist vorhanden, wenn der Get-Help-Befehl den Functionality-Parameter von „Get-Help“ enthält.

.FORWARDHELPTARGETNAME <Name des Befehls>

Leitet zum Hilfethema für den angegebenen Befehl um. Sie können Benutzer zu allen Hilfethemen umleiten, einschließlich Hilfethemen für Funktionen, Skripts, Cmdlets oder Anbieter.

.FORWARDHELPCATEGORY <Kategorie>

Gibt die Hilfekategorie des Elements in „ForwardHelpTargetName“ an. Gültige Werte sind „Alias“, „Cmdlet“, „HelpFile“, „Function“, „Provider“, „General“, „FAQ“, „Glossary“, „ScriptCommand“, „ExternalScript“, „Filter“ oder „All“. Verwenden Sie dieses Schlüsselwort, um Konflikte zu vermeiden, wenn Befehle mit gleichem Namen vorhanden sind.

.REMOTEHELPRUNSPACE <PSSession-Variable>

Gibt eine Sitzung, die das Hilfethema enthält. Geben Sie eine Variable ein, die eine PSSession enthält. Dieses Schlüsselwort wird vom Export-PSSession-Cmdlet verwendet, um die Hilfethemen für die exportierten Befehle zu finden.

.EXTERNALHELP <XML-Hilfedatei>

Gibt eine XML-basierte Hilfedatei für das Skript oder die Funktion an.

Das ExternalHelp-Schlüsselwort ist erforderlich, wenn eine Funktion oder ein Skript in XML-Dateien beschrieben wird. Ohne dieses Schlüsselwort kann „Get-Help“ die XML-basierte Hilfedatei für die Funktion oder das Skript nicht finden.

Das Schlüsselwort „ExternalHelp“ hat Vorrang vor anderen Schlüsselwörtern kommentarbasierter Hilfe. Wenn „ExternalHelp“ vorhanden ist, zeigt „Get-Help“ kommentarbasierte Hilfe selbst dann nicht an, wenn es kein Hilfethema findet, das dem Wert des Schlüsselworts „ExternalHelp“ entspricht.

Wenn die Funktion von einem Modul exportiert wird, legen Sie den Wert des Schlüsselworts „ExternalHelp“ auf einen Dateinamen ohne Pfad fest. „Get-Help“ sucht in einem sprachspezifischen Unterverzeichnis des Modulverzeichnisses nach dem angegebenen Dateinamen. Es gibt keine Anforderungen für den Namen der XML-basierten Hilfedatei für eine Funktion, aber es hat sich bewährt, folgendes Format zu verwenden:

        <ScriptModule.psm1>-help.xml

Wenn die Funktion nicht in einem Modul enthalten ist, beziehen Sie einen Pfad zur XML-basierten Hilfedatei ein. Wenn der Wert einen Pfad enthält, und der Pfad die spezifischen Unterverzeichnisse der Benutzeroberflächenkultur enthält, durchsucht „Get-Help“ die Unterverzeichnisse in Übereinstimmung mit den Fallbacksprachstandards für Windows rekursiv nach einer XML-Datei mit dem Namen des Skripts oder der Funktion, genau wie in einem Modulverzeichnis.

Weitere Informationen über die Cmdlet-Hilfe im XML-basierten Hilfedateiformat finden Sie in der MSDN-Bibliothek (Microsoft Developer Network) unter „Erstellen von Cmdlet-Hilfe“ in https://go.microsoft.com/fwlink/?LinkID=123415.

AUTOMATISCH GENERIERTER INHALT

Name, Syntax, Parameterliste, Parameterattributtabelle, allgemeine Parameter und Hinweise werden automatisch vom Get-Help-Cmdlet generiert.

Name:

Der Abschnitt „Name“ eines Funktionshilfethemas stammt aus dem Funktionsnamen in der Syntax der Funktion. Der Name eines Skripthilfethemas stammt aus dem Namen der Skriptdatei. Um den Namen oder die Groß-/Kleinschreibung zu ändern, ändern Sie die Funktionssyntax oder den Namen der Skriptdatei.

Syntax:

Der Abschnitt „Syntax“ des Hilfethemas wird aus der Funktions- oder Skriptsyntax generiert. Um Details wie z. B. den .NET Framework-Typ eines Parameters der Hilfethemasyntax hinzuzufügen, fügen Sie die Details der Syntax hinzu. Wenn Sie einen Parametertyp nicht angeben, wird der Typ „Object“ als Standardwert eingefügt.

Parameter-Liste:

Die Parameter-Liste im Hilfethema wird aus der Funktions- oder Skriptsyntax und den Beschreibungen generiert, die Sie mithilfe des Schlüsselworts „Parameter“ hinzufügen. Die Funktionsparameter treten im Abschnitt „Parameter“ des Hilfethemas in der gleichen Reihenfolge auf, in der sie in der Funktions- oder Skriptsyntax auftreten. Die Schreibweise und Groß-/Kleinschreibung von Parameternamen wird auch aus der Syntax übernommen; sie wird nicht von dem Parameternamen beeinflusst, der mit dem Parameter-Schlüsselwort angegeben wird.

Allgemeine Parameter:

Die allgemeinen Parameter werden der Syntax und Parameterliste des Hilfethemas hinzugefügt, auch wenn sie keine Auswirkungen haben. Informationen zu den allgemeinen Parametern finden Sie unter „about_CommonParameters“.

Parameterattributtabelle:

„Get-Help“ generiert die Parameterattributtabelle, die bei Verwendung des Full- oder Parameter-Parameters von „Get-Help“ auftritt. Der Wert der Wertattribute „Required“, „Position“ und „Default“ wird aus der Funktions- oder Skriptsyntax übernommen.

HINWEIS ZUR FEHLERBEHANDLUNG:

Standardwerte treten in der Parameterattributtabelle selbst dann nicht auf, wenn sie in Funktion oder Skript definiert werden. Um Benutzern zu helfen, listen Sie den Standardwert in der Parameterbeschreibung auf.

Remarks:

Der Abschnitt „Remarks“ des Hilfethemas wird automatisch aus dem Namen von Funktion oder Skript generiert. Sie können dessen Inhalt nicht ändern oder beeinflussen.

DEAKTIVIEREN KOMMENTARBASIERTER HILFE

[Diese Technik wurde von Rich Prescott vorgeschlagen, einem Windows-Techniker aus New York, NY.]

Sie können die kommentarbasierte Hilfe deaktivieren. Dadurch wird die kommentarbasierte Hilfe ineffektiv, ohne gelöscht zu werden.

Um kommentarbasierte Hilfe zu deaktivieren, fügen Sie die Kommentare in eine here-Zeichenfolge ein. Um die here-Zeichenfolge auszublenden, weisen Sie sie einer Variablen zu, oder leiten Sie sie an das Cmdlet „Out-Null“.

Während sie deaktiviert ist, ist die kommentarbasierte Hilfe wirkungslos.

Beispielsweise verfügt die folgende Funktion über kommentarbasierte Hilfe.

            <#
            .SYNOPSIS 
            Adds a file name extension to a supplied name.
            #>            
            function Add-Extension 
            {
                param ([string]$Name,[string]$Extension = "txt")
                ...
            } 

Um die kommentarbasierte Hilfe zu deaktivieren, schließen Sie sie, wie im folgenden Beispiel gezeigt, in eine here-Zeichenfolge ein.

            @"  
            <#
            .SYNOPSIS 
            Adds a file name extension to a supplied name.
            #>
            "@            
            function Add-Extension 
            {
                param ([string]$Name,[string]$Extension = "txt")
                ...
            }

Um die deaktivierte kommentarbasierte Hilfe auszublenden, weisen Sie, wie im folgenden Beispiel gezeigt, die here-Zeichenfolge einer lokalen Variablen zu, die nicht anderweitig in der Funktion verwendet wird. Sie können sie auch an das Cmdlet „Out-Null“ leiten.

            $x = @"  
            <#
            .SYNOPSIS 
            Adds a file name extension to a supplied name.
            #>
            "@            
            function Add-Extension 
            {
                param ([string]$Name,[string]$Extension = "txt")
                ...
            }

Weitere Informationen zu here-Zeichenfolgen finden Sie unter „about_Quoting_Rules“ (https://go.microsoft.com/fwlink/?LinkID=113253).

BEISPIELE

Beispiel 1: Kommentarbasierte Hilfe für eine Funktion

Die folgende Beispielfunktion enthält kommentarbasierte Hilfe:

            function Add-Extension 
            {
                param ([string]$Name,[string]$Extension = "txt")
                $name = $name + "." + $extension
                $name

            <#
            .SYNOPSIS 
            Adds a file name extension to a supplied name.

            .DESCRIPTION
            Adds a file name extension to a supplied name. 
            Takes any strings for the file name or extension.

            .PARAMETER Name
            Specifies the file name.

            .PARAMETER Extension
            Specifies the extension. "Txt" is the default.

            .INPUTS
            None. You cannot pipe objects to Add-Extension.

            .OUTPUTS
            System.String. Add-Extension returns a string with the extension or file name.

            .EXAMPLE
            C:\PS> extension -name "File"
            File.txt

            .EXAMPLE
            C:\PS> extension -name "File" -extension "doc"
            File.doc

            .EXAMPLE
            C:\PS> extension "File" "doc"
            File.doc

            .LINK
            http://www.fabrikam.com/extension.html

            .LINK
            Set-Item
            #>
            }

Die Ergebnisse sind:

        C:\PS> get-help add-extension -full

        NAME
            Add-Extension
    
        SYNOPSIS
            Adds a file name extension to a supplied name.
    
        SYNTAX
            Add-Extension [[-Name] <String>] [[-Extension] <String>] [<CommonParameters>]
    
        DESCRIPTION
            Adds a file name extension to a supplied name. Takes any strings for the file name or extension.
    
        PARAMETERS
           -Name
               Specifies the file name.
        
               Required?                    false
               Position?                    0
               Default value                
               Accept pipeline input?       false
               Accept wildcard characters?  
        
           -Extension
               Specifies the extension. "Txt" is the default.
        
               Required?                    false
               Position?                    1
               Default value                
               Accept pipeline input?       false
               Accept wildcard characters?  
        
            <CommonParameters>
               This cmdlet supports the common parameters: -Verbose, -Debug,
               -ErrorAction, -ErrorVariable, -WarningAction, -WarningVariable,
               -OutBuffer and -OutVariable. For more information, type
               "get-help about_commonparameters".
            INPUTs
            None. You cannot pipe objects to Add-Extension.
        OUTPUTS
            System.String. Add-Extension returns a string with the extension or file name.
            -------------------------- EXAMPLE 1 --------------------------
    
            C:\PS> extension -name "File"
            File.txt
    
            -------------------------- EXAMPLE 2 --------------------------
    
            C:\PS> extension -name "File" -extension "doc"
            File.doc
    
            -------------------------- EXAMPLE 3 --------------------------
    
            C:\PS> extension "File" "doc"
            File.doc
    
        RELATED LINKS
            http://www.fabrikam.com/extension.html
            Set-Item

Beispiel 2: Beschreibung der Parameter in der Funktionssyntax

Dieses Beispiel ist mit dem vorherigen Beispiel identisch, außer dass die Parameterbeschreibungen in die Syntax der Funktion eingefügt werden. Dieses Format ist besonders hilfreich, wenn die Beschreibungen kurz sind.

        function Add-Extension 
        {
            param 
            (
                [string]
                # Specifies the file name.
                $name,

                [string]
                # Specifies the file name extension. \"Txt\" is the default.
                $extension = "txt"
            )
            $name = $name + "." + $extension
            $name
      
            <#
            .SYNOPSIS 
            Adds a file name extension to a supplied name.

            .DESCRIPTION
            Adds a file name extension to a supplied name. Takes any strings for the file name or extension.

            .INPUTS
            None. You cannot pipe objects to Add-Extension.

            .OUTPUTS
            System.String. Add-Extension returns a string with the extension or file name.

            .EXAMPLE
            C:\PS> extension -name "File"
            File.txt

            .EXAMPLE
            C:\PS> extension -name "File" -extension "doc"
            File.doc

            .EXAMPLE
            C:\PS> extension "File" "doc"
            File.doc
 
            .LINK
            http://www.fabrikam.com/extension.html

            .LINK
            Set-Item
            #>
        }

Beispiel 3: Kommentarbasierte Hilfe für ein Skript

Das folgende Beispielskript enthält kommentarbasierte Hilfe:

Beachten Sie die Leerzeilen zwischen dem schließenden „#>“ und der Param-Anweisung. In einem Skript, das nicht über eine Param-Anweisung verfügt, müssen sich mindestens zwei Leerzeilen zwischen dem letzten Kommentar im Hilfethema und der ersten Funktionsdeklaration befinden. Ohne diese Leerzeilen ordnet „Get-Help“ das Hilfethema der Funktion zu, nicht dem Skript.

           <#
           .SYNOPSIS 
           Performs monthly data updates.

           .DESCRIPTION
           The Update-Month.ps1 script updates the registry with new data generated
           during the past month and generates a report.
    
           .PARAMETER InputPath
           Specifies the path to the CSV-based input file.

           .PARAMETER OutputPath
           Specifies the name and path for the CSV-based output file. By default, 
           MonthlyUpdates.ps1 generates a name from the date and time it runs, and
           saves the output in the local directory.

           .INPUTS
           None. You cannot pipe objects to Update-Month.ps1.

           .OUTPUTS
           None. Update-Month.ps1 does not generate any output.

           .EXAMPLE
           C:\PS> .\Update-Month.ps1

           .EXAMPLE
           C:\PS> .\Update-Month.ps1 -inputpath C:\Data\January.csv

           .EXAMPLE
           C:\PS> .\Update-Month.ps1 -inputpath C:\Data\January.csv -outputPath C:\Reports\2009\January.csv
           #>

           param ([string]$InputPath, [string]$OutPutPath)

           function Get-Data { }
           ...

Der folgende Befehl ruft die Skripthilfe auf. Weil das Skript sich nicht in einem Verzeichnis befindet, das in der Path-Umgebungsvariablen aufgeführt ist, muss der Get-Help-Befehl, der die Hilfe für das Skript abruft, den Skriptpfad angeben.

            PS C:\ps-test> get-help .\update-month.ps1 -full
            NAME
                C:\ps-test\Update-Month.ps1
            SYNOPSIS
                Performs monthly data updates.
            SYNTAX
                C:\ps-test\Update-Month.ps1 [-InputPath] <String> [[-OutputPath]
                <String>] [<CommonParameters>]
            DESCRIPTION
                The Update-Month.ps1 script updates the registry with new data
                generated during the past month and generates a report.
            PARAMETERS
               -InputPath
                   Specifies the path to the CSV-based input file.
        
                   Required?                    true
                   Position?                    0
                   Default value                
                   Accept pipeline input?       false
                   Accept wildcard characters?  
               -OutputPath
                   Specifies the name and path for the CSV-based output file. By
                   default, MonthlyUpdates.ps1 generates a name from the date
                   and time it runs, and saves the output in the local directory.
        
                   Required?                    false
                   Position?                    1
                   Default value                
                   Accept pipeline input?       false
                   Accept wildcard characters?  
               <CommonParameters>
                   This cmdlet supports the common parameters: -Verbose, -Debug,
                   -ErrorAction, -ErrorVariable, -WarningAction, -WarningVariable,
                   -OutBuffer and -OutVariable. For more information, type,
                   "get-help about_commonparameters".
            INPUTS
                   None. You cannot pipe objects to Update-Month.ps1.
            OUTPUTS
                   None. Update-Month.ps1 does not generate any output.
            -------------------------- EXAMPLE 1 --------------------------
        
            C:\PS> .\Update-Month.ps1
    
            -------------------------- EXAMPLE 2 --------------------------
       
            C:\PS> .\Update-Month.ps1 -inputpath C:\Data\January.csv
    
            -------------------------- EXAMPLE 3 --------------------------
    
            C:\PS> .\Update-Month.ps1 -inputpath C:\Data\January.csv -outputPath 
            C:\Reports\2009\January.csv
        
            RELATED LINKS

Beispiel 4: Umleiten zu einer XML-Datei

Sie können XML-basierte Hilfethemen für Funktionen und Skripts schreiben. Kommentarbasierte Hilfe lässt sich zwar leichter implementieren, allerdings ist XML-basierte Hilfe für aktualisierbare Hilfe erforderlich, und um Hilfethemen in mehreren Sprachen bereitzustellen.

Das folgende Beispiel zeigt die ersten Zeilen des Skripts Update-Month.ps1. Das Skript verwendet das ExternalHelp-Schlüsselwort, um den Pfad zu einem XML-basierten Hilfethema für das Skript anzugeben.

Beachten Sie, dass der Wert des Schlüsselworts „ExternalHelp“ auf derselben Zeile wie das Schlüsselwort auftritt. Jede andere Platzierung ist unwirksam.

            #  .ExternalHelp C:\MyScripts\Update-Month-Help.xml

            param ([string]$InputPath, [string]$OutPutPath)
            function Get-Data { }
            ...

Das folgende Beispiel zeigt drei gültige Platzierungen des ExternalHelp-Schlüsselworts in einer Funktion.

function Add-Extension 
            {
                # .ExternalHelp C:\ps-test\Add-Extension.xml

                param ([string] $name, [string]$extension = "txt")
                $name = $name + "." + $extension
                $name
            }
            
            function Add-Extension 
            {
                param ([string] $name, [string]$extension = "txt")
                $name = $name + "." + $extension
                $name
      
                # .ExternalHelp C:\ps-test\Add-Extension.xml
            }

           # .ExternalHelp C:\ps-test\Add-Extension.xml
           function Add-Extension 
            {
                param ([string] $name, [string]$extension = "txt")
                $name = $name + "." + $extension
                $name
            }

Beispiel 5: Umleiten zu einem anderen Hilfethema

Der folgende Code ist ein Auszug aus dem Beginn der integrierten Hilfefunktion in Windows PowerShell, der jeweils einen Hilfetextbildschirm anzeigt. Da das Hilfethema für das Get-Help-Cmdlet die Hilfefunktion beschreibt, verwendet die Hilfefunktion die Schlüsselwörter „ForwardHelpTargetName“ und „ForwardHelpCategory“, um den Benutzer zum Hilfethema des Get-Help-Cmdlets umzuleiten.

            function help 
            {

            <#
            .FORWARDHELPTARGETNAME Get-Help
            .FORWARDHELPCATEGORY Cmdlet
            #>
            [CmdletBinding(DefaultParameterSetName='AllUsersView')]
            param(
                [Parameter(Position=0, ValueFromPipelineByPropertyName=$true)]
                [System.String]
                ${Name},
                   ...

Der folgende Befehl verwendet dieses Feature:

            C:\PS> get-help help
            NAME
                Get-Help
            SYNOPSIS
                Displays information about Windows PowerShell cmdlets and concepts.
            ...

SCHLÜSSELWÖRTER

about_Comment-Based_Help

SIEHE AUCH

about_Functions

about_Functions_Advanced_Parameters

about_Scripts

„Schreiben von Cmdlet-Hilfe“ (https://go.microsoft.com/fwlink/?LinkID=123415)