THEMA about_parsing KURZBESCHREIBUNG Beschreibt die Funktionsweise der Befehlsanalyse in Windows PowerShell. DETAILBESCHREIBUNG Wenn Sie einen Befehl an der Eingabeaufforderung eingeben, wird dieser von Windows PowerShell in eine Reihe von Segmenten unterteilt, die als Tokens bezeichnet werden. Anschließend wird die Interpretation der einzelnen Segmente festgelegt. Beispielsweise wird der folgende Befehl von Windows PowerShell in die zwei getrennt zu interpretierenden Token "Write-Host" und "book" aufgeteilt: Write-Host book Beim Verarbeiten eines Befehls wird der Windows PowerShell-Parser im Ausdrucksmodus oder im Argumentmodus ausgeführt: - Im Ausdrucksmodus müssen die Zeichenfolgenwerte in Anführungszeichen eingeschlossen werden. Zahlen, die nicht in Anführungszeichen eingeschlossen sind, werden als numerische Werte (und nicht als Zeichenfolge) behandelt. - Im Argumentmodus wird jeder Wert als erweiterbare Zeichenfolge behandelt, sofern dieser nicht mit einem der folgenden Sonderzeichen beginnt: Dollarzeichen ($), at-Zeichen (@), einfaches Anführungszeichen ('), doppeltes Anführungszeichen (") oder runde Klammer links ((). Werte, denen eines dieser Sonderzeichen vorangestellt ist, werden als Wertausdruck behandelt. Die folgende Tabelle enthält mehrere Beispiele für Befehle, die im Ausdrucks- oder Argumentmodus verarbeitet werden, sowie die Ergebnisse dieser Befehle: Beispiel Modus Ergebnis ------------------ ---------- ---------------- 2+2 Ausdruck 4 (integer) Write-Output 2+2 Argument "2+2" (string) Write-Output (2+2) Ausdruck 4 (integer) $a = 2+2 Ausdruck $a = 4 (integer) Write-Output $a Ausdruck 4 (integer) Write-Output $a/H Argument "4/H" (string) Jedes Token kann als Objekttyp interpretiert werden, beispielsweise als boolesches Objekt oder als Zeichenfolgenobjekt. Windows PowerShell versucht, den Objekttyp anhand des Ausdrucks zu bestimmen. Der Objekttyp hängt vom Typ des von einem Befehl erwarteten Parameters ab, sowie davon, ob das Argument von Windows PowerShell in den richtigen Typ konvertiert werden kann. Die folgende Tabelle enthält mehrere Beispiele für die Typen, die von den Ausdrücken zurückgegebenen Werten zugewiesen werden: Beispiel Modus Ergebnis ------------------ ---------- --------------- Write-Output !1 argument "!1" (string) Write-Output (!1) Ausdruck False (Boolean) Write-Output (2) Ausdruck 2 (integer) SIEHE AUCH about_Command_Syntax