about_Command_Syntax

Korte beschrijving

Beschrijft de syntaxisdiagrammen die worden gebruikt in PowerShell.

Lange beschrijving

De cmdlets Get-Help en Get-Command geven syntaxisdiagrammen weer om u te helpen opdrachten correct samen te stellen. In dit artikel wordt uitgelegd hoe u de syntaxisdiagrammen interpreteert.

De syntaxis voor een opdracht ophalen

Er zijn twee manieren om de syntaxis voor een opdracht op te halen: Get-Help en Get-Command.

Get-Command

De Get-Command opdracht kan worden gebruikt om informatie over elke opdracht op uw systeem op te halen. Gebruik de parameter Syntaxis om de syntaxis voor een opdracht op te halen.

Get-Command Get-Command -Syntax
Get-Command [[-ArgumentList] <Object[]>] [-Verb <string[]>] [-Noun <string[]>]
 [-Module <string[]>] [-FullyQualifiedModule <ModuleSpecification[]>]
 [-TotalCount <int>] [-Syntax] [-ShowCommandInfo] [-All] [-ListImported]
 [-ParameterName <string[]>] [-ParameterType <PSTypeName[]>]
 [<CommonParameters>]

Get-Command [[-Name] <string[]>] [[-ArgumentList] <Object[]>]
 [-Module <string[]>] [-FullyQualifiedModule <ModuleSpecification[]>]
 [-CommandType <CommandTypes>] [-TotalCount <int>] [-Syntax] [-ShowCommandInfo]
 [-All] [-ListImported] [-ParameterName <string[]>]
 [-ParameterType <PSTypeName[]>] [-UseFuzzyMatching]
 [-FuzzyMinimumDistance <uint>] [-UseAbbreviationExpansion]
 [<CommonParameters>]

Get-Help

De Get-Help opdracht bevat gedetailleerde informatie over PowerShell-opdrachten, waaronder syntaxis, gedetailleerde beschrijving van de cmdlet en parameters en voorbeelden. De uitvoeropdracht Get-Help begint met een korte beschrijving van de opdracht gevolgd door de syntaxis.

Get-Help Get-Command

De volgende uitvoer is ingekort om te focussen op de syntaxisbeschrijving.

NAME
    Get-Command

SYNOPSIS
    Gets all commands.

SYNTAX

    Get-Command [[-Name] <System.String[]>] [[-ArgumentList] <System.Object[]>]
    [-All] [-CommandType {Alias | Function | Filter | Cmdlet | ExternalScript |
    Application | Script | Workflow | Configuration | All}]
    [-FullyQualifiedModule <Microsoft.PowerShell.Commands.ModuleSpecification[]>]
    [-ListImported] [-Module <System.String[]>] [-ParameterName <System.String[]>]
    [-ParameterType <System.Management.Automation.PSTypeName[]>]
    [-ShowCommandInfo] [-Syntax] [-TotalCount <System.Int32>]
    [-UseAbbreviationExpansion] [-UseFuzzyMatching] [<CommonParameters>]

    Get-Command [[-ArgumentList] <System.Object[]>] [-All]
    [-FullyQualifiedModule <Microsoft.PowerShell.Commands.ModuleSpecification[]>]
    [-ListImported] [-Module <System.String[]>] [-Noun <System.String[]>]
    [-ParameterName <System.String[]>]
    [-ParameterType <System.Management.Automation.PSTypeName[]>]
    [-ShowCommandInfo] [-Syntax] [-TotalCount <System.Int32>]
    [-Verb <System.String[]>] [<CommonParameters>]
...

De uitvoer van Get-Help is iets anders dan de uitvoer van Get-Command. Let op het verschil in de syntaxis voor de parameter CommandType . Get-Command geeft het parametertype weer als opsomming [CommandTypes] , terwijl Get-Help de mogelijke waarden voor de opsomming worden weergegeven.

Parametersets

De parameters van een PowerShell-opdracht worden vermeld in parametersets. Een PowerShell-opdracht kan een of meer parametersets hebben. De Get-Command cmdlet heeft twee parametersets, zoals wordt weergegeven in de vorige voorbeelden.

Sommige cmdlet-parameters zijn uniek voor een parameterset en andere worden weergegeven in meerdere parametersets. Elke parameterset vertegenwoordigt de notatie voor een geldige opdracht. Een parameterset bevat alleen parameters die samen in een opdracht kunnen worden gebruikt. Wanneer parameters niet kunnen worden gebruikt in dezelfde opdracht, worden ze weergegeven in afzonderlijke parametersets.

De cmdlet Get-Random bevat bijvoorbeeld de volgende parametersets:

$cmd = Get-Command Get-Random
$cmd.ParameterSets |
    Select-Object Name, IsDefault, @{n='Parameters';e={$_.ToString()}} |
    Format-Table -Wrap
Name                       IsDefault Parameters
----                       --------- ----------
RandomNumberParameterSet        True [[-Maximum] <Object>] [-SetSeed <int>]
                                     [-Minimum <Object>] [-Count <int>]
                                     [<CommonParameters>]
RandomListItemParameterSet     False [-InputObject] <Object[]> [-SetSeed <int>]
                                     [-Count <int>] [<CommonParameters>]
ShuffleParameterSet            False [-InputObject] <Object[]> -Shuffle
                                     [-SetSeed <int>] [<CommonParameters>]
  • De eerste parameterset retourneert een of meer willekeurige getallen en bevat de parameters Minimum, Maximum en Aantal .
  • De tweede parameterset retourneert een willekeurig geselecteerd object uit een set objecten en bevat de parameters InputObject en Count .
  • De derde parameterset bevat de parameter Shuffle die een verzameling objecten in een willekeurige volgorde retourneert, zoals het versnipperen van een stapel kaarten.
  • Alle parametersets hebben de parameter SetSeed en de algemene parameters.

Deze parametersets laten zien dat u de parameters InputObject en Count in dezelfde opdracht kunt gebruiken, maar u kunt de parameters Maximum en Shuffle niet samen gebruiken.

Elke cmdlet heeft ook een standaardparameterset. De standaardparameterset wordt gebruikt wanneer u geen parameters opgeeft die uniek zijn voor een parameterset. Als u bijvoorbeeld zonder parameters gebruikt Get-Random , wordt in PowerShell ervan uitgegaan dat u de parameterset RandomNumberParameterSet gebruikt en dat er een willekeurig getal wordt geretourneerd.

Symbolen in syntaxisdiagrammen

Het syntaxisdiagram bevat de opdrachtnaam, de opdrachtparameters en de parameterwaarden.

De syntaxisdiagrammen gebruiken de volgende symbolen:

  • Een afbreekstreepje - geeft een parameternaam aan. Typ in een opdracht het afbreekstreepje direct voor de parameternaam zonder tussenliggende spaties, zoals wordt weergegeven in het syntaxisdiagram.

    Als u bijvoorbeeld de naamparameter van Get-Command, typt u: Get-Command -Name.

  • Punthaken < > geven de tekst van de tijdelijke aanduiding aan. U typt niet de punthaken of de tekst van de tijdelijke aanduiding in een opdracht. In plaats daarvan vervangt u het door het item dat wordt beschreven.

    De tijdelijke aanduiding tussen de punthaken identificeert het .NET-type van de waarde die een parameter gebruikt. Als u bijvoorbeeld de parameter Name van de Get-Command cmdlet wilt gebruiken, vervangt u de <string[]> door een of meer tekenreeksen gescheiden door komma's (,).

  • [] Vierkante haken die zijn toegevoegd aan een .NET-type geven aan dat de parameter een of meer waarden van dat type kan accepteren. Voer de waarden in als een door komma's gescheiden lijst.

    De parameters Naam en Waarde van de New-Alias cmdlet nemen bijvoorbeeld slechts één tekenreeks per tekenreeks.

    New-Alias [-Name] <string> [-Value] <string>
    
    New-Alias -Name MyAlias -Value mycommand.exe
    

    Maar de parameter Name van Get-Process kan een of meer tekenreeksen gebruiken.

    Get-Process [-Name] <string[]>
    
    Get-Process -Name Explorer, Winlogon, Services
    
  • Parameters zonder waarden

    Sommige parameters accepteren geen invoer, dus ze hebben geen parameterwaarde. Parameters zonder waarden zijn schakelparameters. Schakelparameters worden gebruikt als booleaanse waarden. Ze zijn standaard ingesteld op $false. Wanneer u een schakelparameter gebruikt, wordt de waarde ingesteld op $true.

    De parameter Get-Command ListImported is bijvoorbeeld een schakelparameter. Wanneer u de parameter ListImported gebruikt, retourneert de cmdlet alleen opdrachten die zijn geïmporteerd uit modules in de huidige sessie.

    Get-Command [-ListImported]
    
  • [ ] Vierkante haken rond parameters geven optionele items aan. Een parameter en de bijbehorende waarde kunnen optioneel zijn. De parameter CommandType van Get-Command en de bijbehorende waarde staan bijvoorbeeld tussen vierkante haken omdat ze beide optioneel zijn.

    Get-Command [-CommandType <CommandTypes>]
    

    Haakjes rond de parameternaam, maar niet de parameterwaarde, geven aan dat de parameternaam optioneel is. Deze parameters worden positionele parameters genoemd. De parameterwaarden moeten worden weergegeven in de juiste volgorde om de waarden te koppelen aan de juiste parameter.

    Voor de New-Alias cmdlet zijn bijvoorbeeld de parameterwaarden Naam en Waarde vereist, maar de parameternamen -Name en -Value, zijn optioneel.

    New-Alias [-Name] <string> [-Value] <string>
    
    New-Alias MyAlias mycommand.exe
    

    In elke parameterset worden de parameters weergegeven in de positievolgorde. De volgorde van parameters in een opdracht is alleen van belang wanneer u de optionele parameternamen weglaat. Wanneer parameternamen worden weggelaten, wijst PowerShell waarden toe aan parameters op positie en type. Zie about_Parameters voor meer informatie over parameterpositie.

  • Accolades {} geven een opsomming aan. Dit is een set geldige waarden voor een parameter.

    De waarden in de accolades worden gescheiden door verticale balken |. Deze balken geven een exclusieve OF-keuze aan, wat betekent dat u slechts één waarde kunt kiezen uit de set waarden die in de accolades worden vermeld.

    De syntaxis voor de New-Alias cmdlet bevat bijvoorbeeld de volgende opsomming van de waarde voor de parameter Option :

    New-Alias -Option {None | ReadOnly | Constant | Private | AllScope}
    

    De accolades en verticale balken geven aan dat u een van de vermelde waarden kunt kiezen voor de parameter Optie , zoals ReadOnly of AllScope.

    New-Alias -Option ReadOnly
    

Zie ook