THEMA
about_Parameters
KURZBESCHREIBUNG
Beschreibt, wie in Windows PowerShell mit Cmdlet-Parametern
gearbeitet wird.
DETAILBESCHREIBUNG
Bei den meisten Windows PowerShell-Cmdlets und -Funktionen sind
Parameter erforderlich, um Benutzern Eingaben oder die Auswahl
von Optionen ermöglichen. Die Parameter folgen dem Cmdlet- oder
Funktionsnamen und weisen in der Regel die folgende Form auf:
-<Parametername> <Parameterwert>
Dem Parameternamen wird ein Bindestrich (-) vorangestellt, mit
dem Windows PowerShell mitgeteilt wird, dass es sich bei dem Wort
nach dem Bindestrich um einen Parameter und nicht um einen Wert
handelt, der an das Cmdlet oder die Funktion übergeben werden
soll. Nicht für alle Parameter sind Werte erforderlich, und nicht alle
Parameternamen müssen angegeben werden. In einigen Fällen wird der
Parametername impliziert und muss nicht explizit im Befehl angegeben
werden.
Der Parametertyp und die jeweiligen Anforderungen unterscheiden
sich je nach Cmdlet bzw. Funktion. Mit dem Cmdlet "Get-Help"
rufen Sie Informationen zu den Parametern eines Cmdlet ab. Wenn
Sie beispielsweise Informationen zu den Parametern des Cmdlet
"Get-ChildItem" suchen, geben Sie Folgendes ein:
get-help get-childitem
Wenn Sie Informationen zu den Parametern einer Funktion suchen,
überprüfen Sie die Parameterdefinitionen. Parameter sind nach dem
Funktionsnamen oder im Text der Funktion definiert. Für sie wird das Param-
Schlüsselwort verwendet. Weitere Informationen finden Sie unter
"about_Functions".
Manche Funktionen enthalten auch kommentarbasierte Hilfe zu
Parametern. Verwenden Sie für diese Funktionen das Cmdlet
"Get-Help". Weitere Informationen hierzu finden Sie im Hilfethema
zu "Get-Help" und "about_Comment_Based_Help".
Das Cmdlet "Get-Help" gibt verschiedene Details zum Cmdlet oder
zur Funktion zurück, u. a. eine Beschreibung des Cmdlets oder der
Funktion, die Befehlssyntax, Informationen zu den Parametern
sowie Beispiele zur Verwendung des Cmdlet oder der Funktion.
Informationen zu einem bestimmten Parameter können Sie auch mit
dem Parameter-Parameter des Cmdlet "Get-Help" oder der Funktion
suchen. Zudem können Sie im Parameter-Parameter das
Platzhalterzeichen (*) verwenden, wenn Sie Informationen zu allen
Parametern des Cmdlet oder der Funktion suchen. Mit dem folgenden
Befehl beispielsweise werden Informationen zu allen Parametern
des Cmdlet "Get-Member" oder der Funktion abgerufen:
get-help get-member -parameter *
Diese Informationen enthalten die für die Verwendung des Parameters
erforderlichen Details. Beispielsweise enthalten die Hilfeinformationen
zum Cmdlet "Get-ChildItem" die folgenden Details zum zugehörigen
-Path-Parameter:
-path <string[]>
Gibt einen Pfad zu einem oder mehreren Speicherorten an.
Platzhalterzeichen sind zulässig. Der Standardspeicherort ist das
aktuelle Verzeichnis (.).
Erforderlich? false
Position? 1
Standardwert Aktuelles Verzeichnis
Pipelineeingaben akzeptieren? true (ByValue, ByPropertyName)
Platzhalterzeichen akzeptieren? true
Die Parameterinformationen enthalten die Parametersyntax, eine
Beschreibung des Parameters und die Parameterattribute.
In den folgenden Abschnitten werden die Parameterattribute
beschrieben.
Parameter - Erforderlich?
Diese Einstellung gibt an, ob der Parameter erforderlich ist, d. h.,
ob alle Befehle, für die dieses Cmdlet verwendet wird, diesen
Parameter enthalten müssen. Wenn als Wert "True" festgelegt und
der Parameter im Befehl nicht angegeben ist, werden Sie von
Windows PowerShell aufgefordert, einen Wert für den Parameter
einzugeben.
Parameter - Position?
Diese Einstellung gibt an, ob Sie den Wert eines Parameters
angeben können, ohne diesem den Parameternamen voranzustellen. Bei
Festlegung auf "0" oder "named" ist ein Parametername erforderlich. Dieser
Parametertyp wird als benannter Parameter bezeichnet. Benannte
Parameter können an beliebiger Stelle nach dem Cmdlet-Namen
aufgeführt werden.
Wenn die Einstellung "Parameter - Position?" auf eine ganze Zahl
ungleich 0 festgelegt ist, ist der Parametername nicht
erforderlich. Dieser Parametertyp wird als Positionsparameter
bezeichnet, und die Zahl gibt die Position an, an der sich der
Parameter in Bezug auf andere Positionsparameter befinden muss.
Wenn Sie bei Positionsparametern den Parameternamen angeben, kann
der Parameter an beliebiger Stelle nach dem Cmdlet-Namen
aufgeführt werden.
Das Cmdlet "Get-ChildItem" verfügt z. B. über den Path-Parameter
und den Exclude-Parameter. Für "Path" ist "Parameter - Position?"
auf 1 festgelegt. Dies bedeutet, dass es sich um einen
Positionsparameter handelt. Für "Exclude" ist "Parameter -
Position?" auf 0 festgelegt. Dies bedeutet, dass es sich um einen
benannten Parameter handelt.
Daher ist der Parametername für "Path" nicht erforderlich, doch
muss sein Parameterwert als erster oder einziger unbenannter
Parameterwert im Befehl angegeben sein. Da es sich beim
Exclude-Parameter jedoch um einen benannten Parameter handelt,
können Sie diesen an beliebiger Position im Befehl einfügen.
Aufgrund der Einstellungen für "Parameter - Position?" für diese
beiden Parameter können Sie folgende Befehle verwenden:
Get-ChildItem -path c:\techdocs -exclude *.ppt
Get-ChildItem c:\techdocs -exclude *.ppt
Get-ChildItem -exclude *.ppt -path c:\techdocs
Get-ChildItem -exclude *.ppt c:\techdocs
Wenn Sie einen anderen Positionsparameter ohne Parameternamen
angegeben, muss dieser Parameter an der durch die Einstellung
"Parameter - Position?" angegebenen Stelle eingefügt werden.
Parametertyp
Mit dieser Einstellung wird der Microsoft .NET Framework-Typ des
Parameterwerts angegeben. Wenn als Typ z. B. Int32 festgelegt ist,
muss als Parameterwert eine ganze Zahl verwendet werden. Wenn als Typ
string festgelegt ist, muss als Parameterwert eine Zeichenfolge
verwendet werden. Wenn die Zeichenfolge Leerzeichen enthält, muss der
Wert in Anführungszeichen eingeschlossen oder den Leerzeichen das
Escapezeichen (`) vorangestellt werden.
Standardwert
Gibt den Wert an, den der Parameter annimmt, wenn kein anderer
Wert angegeben wurde. Beispielsweise wird der Standardwert des
Path-Parameters häufig das aktuelle Verzeichnis verwendet. Für
erforderliche Parameter ist niemals ein Standardwert festgelegt.
Für viele optionale Parameter ist kein Standardwert festgelegt,
da der Parameter keine Auswirkungen besitzt, wenn er nicht
verwendet wird.
Mehrere Werte akzeptieren?
Diese Einstellung gibt an, ob ein Parameter mehrere
Parameterwerte akzeptiert. Wenn ein Parameter mehrere Werte
akzeptiert, können Sie eine durch Trennzeichen getrennte Liste
als Wert des Parameters im Befehl eingeben, oder speichern Sie
eine durch Trennzeichen getrennte Liste (ein Array) in einer
Variablen, und geben Sie dann die Variable als Parameterwert an.
Beispielsweise akzeptiert der ServiceName-Parameter des Cmdlet
"Get-Service" mehrere Werte. Die folgenden beiden Befehle sind gültig:
get-service -servicename winrm, netlogon
$s = "winrm", "netlogon"
get-service -servicename $s
Pipelineeingaben akzeptieren?
Diese Einstellung gibt an, ob Sie mit dem Pipelineoperator (|)
einen Wert an den Parameter senden können.
Wert Beschreibung
----- -----------
False Gibt an, dass Sie keinen Wert über die
Pipeline an den Parameter übergeben können.
True (ByValue) Gibt an, dass Sie jeden Wert über
die Pipeline an den Parameter
übergeben können, sodass mit dem
Wert der .NET Framework-Typ des
Parameters angegeben wird, oder
der Wert kann in den angegebenen .NET
Framework-Typ konvertiert werden.
Wenn ein Parameter auf "True (ByValue)"
festgelegt ist, versucht Windows
PowerShell, über die Pipeline übergebene
Werte diesem Parameter zuzuordnen, bevor
versucht wird, den Befehl mit anderen
Methoden zu interpretieren.
True (ByPropertyName) Gibt an, dass Sie einen
Wert über die Pipeline an den
Parameter übergeben können, aber
der .NET Framework-Typ des
Parameters eine Eigenschaft mit dem
gleichen Namen wie der Parameter enthalten muss.
Zum Beispiel können Sie nur Werte über
die Pipeline an einen Name-Parameter
übergeben, wenn diese die Name-Eigenschaft
besitzen.
Platzhalterzeichen akzeptieren?
Gibt an, ob der Wert eines Parameters Platzhalterzeichen
enthalten darf, sodass der Parameterwert mehreren vorhandenen
Elementen im Zielcontainer entspricht.
Allgemeine Parameter
Als allgemeine Parameter werden Parameter bezeichnet, die Sie mit
jedem Cmdlet verwenden können.
Weitere Informationen erhalten Sie, indem Sie Folgendes eingeben:
help about_commonparameters
SIEHE AUCH
about_Command_syntax
about_Comment_Based_Help
about_Functions_Advanced
about_Pipelines
about_Wildcards