THEMA
    about_Quoting_Rules

KURZBESCHREIBUNG
    Beschreibt Regeln zur Verwendung einzelner und doppelter 
    Anführungszeichen in Windows PowerShell.


DETAILBESCHREIBUNG
    Anführungszeichen werden verwendet, um eine Literalzeichenfolge 
    anzugeben. Zeichenfolgen können in einfache gerade (') oder 
    doppelte gerade Anführungszeichen (") eingeschlossen werden.
 

    Anführungszeichen werden außerdem verwendet, um eine 
    here-Zeichenfolge zu erstellen. Eine here-Zeichenfolge ist eine 
    Zeichenfolge in einfachen oder doppelten Anführungszeichen, in 
    der Anführungszeichen buchstäblich interpretiert werden. Eine 
    here-Zeichenfolge kann mehrere Zeilen umfassen. Alle Zeilen in 
    einer here-Zeichenfolge werden als Zeichenfolgen interpretiert, 
    auch wenn sie nicht in Anführungszeichen eingeschlossen sind.


    In Befehlen an Remotecomputer definieren Anführungszeichen die 
    Teile des Befehls, die auf dem Remotecomputer ausgeführt werden. 
    In einer Remotesitzung legen Anführungszeichen weiterhin fest, ob 
    die Variablen in einem Befehl zuerst auf dem lokalen Computer 
    oder auf dem Remotecomputer interpretiert werden.


 Zeichenfolgen in einzelnen und doppelten Anführungszeichen

      Bei Zeichenfolgen zwischen doppelten Anführungszeichen werden 
      Variablennamen nach einem Dollarzeichen ($) durch den Wert der 
      Variablen ersetzt, bevor die Zeichenfolge zur Verarbeitung an 
      den Befehl übergeben wird.
 

      Beispiel:

          $i = 5
          "Der Wert von $i ist $i."


      Dieser Befehl erzeugt folgende Ausgabe: 

          Der Wert von 5 ist 5


      In Zeichenfolgen in doppelten Anführungszeichen werden auch 
      Ausdrücke ausgewertet, und das Ergebnis wird in die 
      Zeichenfolge eingefügt. Beispiel:

	  "Der Wert von $(2+3) ist 5."


      Dieser Befehl erzeugt folgende Ausgabe:

	  Der Wert von 5 ist 5


      Zeichenfolgen zwischen einfachen Anführungszeichen werden so an 
      den Befehl übergeben, wie Sie eingegeben wurden. Es findet 
      keine Ersetzung statt. Beispiel:

          $i = 5
          'Der Wert von $i ist $i.'


      Dieser Befehl erzeugt folgende Ausgabe: 

          Der Wert von $i ist $i.


      Entsprechend werden Ausdrücke in Zeichenfolgen zwischen einfachen 
      Anführungszeichen nicht ausgewertet. Sie werden als Literale 
      interpretiert. Beispiel:

	  'Der Wert von $(2+3) ist 5.'


      Dieser Befehl erzeugt folgende Ausgabe:

	  Der Wert von $(2+3) ist 5.


      Mit dem Graviszeichen (') (ASCII 96), dem Escapezeichen von 
      Windows PowerShell, können Sie die Ersetzung eines 
      Variablenwerts in einer Zeichenfolge zwischen doppelten 
      Anführungszeichen verhindern.


      Im folgenden Beispiel wird durch das Graviszeichen vor der 
      ersten $i-Variablen verhindert, dass der Name der Variablen von 
      Windows PowerShell durch ihren Wert ersetzt wird. Beispiel:

          $i = 5
          "Der Wert von `$i ist $i."


      Dieser Befehl erzeugt folgende Ausgabe: 

          Der Wert von $i ist 5.
     
    
      Doppelte Anführungszeichen können in einer Zeichenfolge 
      angezeigt werden, indem die gesamte Zeichenfolge in einfache 
      Anführungszeichen eingeschlossen wird. Beispiel:

          'Wie sagt man so schön: "Man lernt nie aus."'


      Dieser Befehl erzeugt folgende Ausgabe:

          Wie sagt man so schön: "Man lernt nie aus."


      Sie können auch eine Zeichenfolge in einfachen Anführungszeichen
      in eine Zeichenfolge in doppelten Anführungszeichen 
      einschließen. Beispiel:

          "Wie sagt man so schön: 'Man lernt nie aus.'"


      Dieser Befehl erzeugt folgende Ausgabe:

          Wie sagt man so schön: 'Man lernt nie aus.'


      Sie können auch einen Satz in doppelten Anführungszeichen in 
      doppelte Anführungszeichen einschließen. Beispiel:

          "Wie sagt man so schön: ""Man lernt nie aus."""


      Dieser Befehl erzeugt folgende Ausgabe:

          Wie sagt man so schön: "Man lernt nie aus."


      Um ein einfaches Anführungszeichen in eine Zeichenfolge in einfachen 
      Anführungszeichen einzuschließen, verwenden Sie ein zweites, darauf 
      folgendes einfaches Anführungszeichen. Beispiel:

          'Boole''sch'


      Dieser Befehl erzeugt folgende Ausgabe:

          Boole'sch


      Um Windows PowerShell zu zwingen, ein doppeltes Anführungszeichen 
      buchstäblich zu interpretieren, verwenden Sie ein 
      Graviszeichen. Dadurch wird verhindert, dass Windows PowerShell 
      das Anführungszeichen als Zeichenfolgentrennzeichen 
      interpretiert. Beispiel:

          "Beginnen Sie eine Zeichenfolge mit einem Anführungszeichen (`")."


      Da der Inhalt von Zeichenfolgen in einfachen Anführungszeichen 
      buchstäblich interpretiert wird, können Sie in einer 
      Zeichenfolge in einfachen Anführungszeichen kein Graviszeichen 
      verwenden, um die buchstäbliche Interpretation von Zeichen zu 
      erzwingen.

 
      Mit dem folgenden Befehl wird beispielsweise ein Fehler 
      generiert, da Windows PowerShell das Escapezeichen nicht 
      erkennt. Stattdessen wird das zweite Anführungszeichen als Ende 
      der Zeichenfolge interpretiert.


	  PS C:\> 'Beginnen Sie eine Zeichenfolge mit einem Anführungszeichen (`').'
          Unerwartetes Token ')' in Ausdruck oder Anweisung.
          Bei Zeile:1 Zeichen:27
          + 'Beginnen Sie eine Zeichenfolge <<<< mit einem Anführungszeichen (`').'


 Here-Zeichenfolgen in einzelnen und doppelten Anführungszeichen

      Die Verwendung von Anführungszeichen für here-Zeichenfolgen ist 
      etwas anders geregelt.


      Eine here-Zeichenfolge ist eine Zeichenfolge in einfachen oder 
      doppelten Anführungszeichen, in der Anführungszeichen buchstäblich 
      interpretiert werden. Eine here-Zeichenfolge kann mehrere Zeilen 
      umfassen. Alle Zeilen in einer here-Zeichenfolge werden als 
      Zeichenfolgen interpretiert, auch wenn sie nicht in Anführungszeichen 
      eingeschlossen sind.


      Analog zu regulären Zeichenfolgen werden Variablen bei 
      here-Zeichenfolgen in doppelten Anführungszeichen durch die 
      entsprechenden Werte ersetzt. Bei here-Zeichenfolgen in 
      einfachen Anführungszeichen werden Variablen nicht durch die 
      entsprechenden Werte ersetzt.

 
      Auch wenn here-Zeichenfolgen für beliebigen Text verwendet 
      werden können, sind sie für die folgenden Arten von Text 
      besonders nützlich:

          - Text mit literalen Anführungszeichen; 
          - mehrzeiliger Text, beispielsweise Text in einem HTML- oder XML-Dokument; 
          - Hilfetext für ein Skript oder eine Funktion


      Here-Zeichenfolgen können eines der nachstehenden Formate 
      aufweisen. <Eingabetaste> steht dabei für das ausgeblendete 
      Zeilenvorschubzeichen oder das ausgeblendete Neue-Zeile-Zeichen,
      das hinzugefügt wird, wenn Sie die EINGABETASTE drücken.
 

      Format 1:

	  @"<Eingabetaste>
          <Zeichenfolge> [Zeichenfolge] ...<Eingabetaste>
          "@


      Format 2:
 
	  @'<Eingabetaste>
          <Zeichenfolge> [Zeichenfolge] ...<Eingabetaste>
          '@


      Unabhängig vom verwendeten Format muss das schließende 
      Anführungszeichen das erste Zeichen in der Zeile darstellen. 

   
      Eine here-Zeichenfolge enthält den gesamten Text zwischen den 
      beiden ausgeblendeten Zeichen.
      In der here-Zeichenfolge werden alle Anführungszeichen 
      buchstäblich interpretiert.
      Beispiel:

	  @"
	  Geben Sie "get-help" ein, um Hilfe zu erhalten.
	  "@

    
      Dieser Befehl erzeugt folgende Ausgabe:

	  Geben Sie "get-help" ein, um Hilfe zu erhalten.


      Here-Zeichenfolgen können die Verwendung von Zeichenfolgen in 
      Befehlen vereinfachen. Beispiel:

	  @"
          Beginnen Sie eine Zeichenfolge mit einem Anführungszeichen (').
          "@

	    
      Dieser Befehl erzeugt folgende Ausgabe:

          Beginnen Sie eine Zeichenfolge mit einem Anführungszeichen (').


      Bei here-Zeichenfolgen in einfachen Anführungszeichen werden 
      Variablen buchstäblich interpretiert und exakt reproduziert. 
      Beispiel:

          @'
	  Die Variable "$profile" enthält den Pfad
          des Windows PowerShell-Profils.
          '@


      Dieser Befehl erzeugt folgende Ausgabe:

	  Die Variable "$profile" enthält den Pfad
          des Windows PowerShell-Profils.


      Bei here-Zeichenfolgen in doppelten Anführungszeichen werden 
      Variablen durch die entsprechenden Werte ersetzt. Beispiel:

	  @" 
          Auch wenn Sie kein Profil erstellt haben, lautet der Pfad 
          der Profildatei wie folgt:
          $profile.
          "@

    
      Dieser Befehl erzeugt folgende Ausgabe:

	  Auch wenn Sie kein Profil erstellt haben,
	  lautet der Pfad der Profildatei wie folgt:
	  C:\Users\User01\Documents\WindowsPowerShell\Microsoft.PowerShell_profile.ps1.


      Here-Zeichenfolgen werden in aller Regel verwendet, um mehrere 
      Zeilen einer Variablen zuzuweisen. Beispielsweise weist die 
      folgende here-Zeichenfolge der Variablen "$page" eine Seite mit 
      XML zu.


        $page = [XML] @"
        <command:command xmlns:maml="https://schemas.microsoft.com/maml/2004/10" 
        xmlns:command="https://schemas.microsoft.com/maml/dev/command/2004/10" 
        xmlns:dev="https://schemas.microsoft.com/maml/dev/2004/10">
 	    <command:details>
	    	    <command:name>
                       Format-Table
		    </command:name>
		    <maml:description>
			<maml:para>Formatiert die Ausgabe als Tabelle.</maml:para> 
		    </maml:description>
		    <command:verb>format</command:verb>
		    <command:noun>table</command:noun>
		    <dev:version></dev:version>
 	    </command:details>
        ...
        </command:command>
        "@
   

      Here-Zeichenfolgen sind auch ein gut geeignetes Format für 
      Eingaben für das Cmdlet "ConvertFrom-StringData", mit dem 
      here-Zeichenfolgen in Hashtabellen umgewandelt werden. Weitere 
      Informationen finden Sie unter "ConvertFrom-StringData".


SIEHE AUCH
    about_Escape_Characters
    ConvertFrom-StringData




Inhaltsverzeichnis