トピック
    about_parsing

簡易説明
    Windows PowerShell がコマンドをどのように解析するかについて説明します。


詳細説明
    コマンド プロンプトにコマンドを入力すると、Windows PowerShell によって、
    そのコマンド テキストはトークンと呼ばれる一連のセグメントに分割されます。
    その後、各セグメントの解釈方法が決定されます。たとえば、次のコマンドは、
    Windows PowerShell によって "Write-Host" および "book" の 2 つのトークンに
    分割され、各トークンは別々に解釈されます。


        Write-Host book


    PowerShell パーサーは、コマンドを処理するときに、式モードまたは引数
    モードで動作します。

        - 式モードでは、文字列値を引用符で囲む必要があります。引用符で囲まれていない数字は 
          (文字列ではなく) 数値として扱われます。

        - 引数モードでは、値の先頭がドル記号 ($)、アット マーク (@)、単一引用符 (')、
          二重引用符 (")、または始め丸かっこ (() のいずれでもない場合は、
          その値が拡張可能文字列として扱われます。

    先頭がこれらの文字のいずれかである場合、その値は値の式として扱われます。


    次の表に、式モードと引数モードで処理されるコマンドの例とそれぞれの処理結果を示します。


    例                 モード       結果
    ------------------ ----------   ----------------
    2+2                式           4 (整数値)
    Write-Output 2+2   引数         "2+2" (文字列)
    Write-Output (2+2) 式           4 (整数値)
    $a = 2+2           式           $a = 4 (整数値)
    Write-Output $a    式           4 (整数値)
    Write-Output $a/H  引数         "4/H" (文字列)

    
    各トークンは、ブール型や文字列型などのオブジェクト型として解釈されます。
    Windows PowerShell は、式からオブジェクト型を判断します。判断される
    オブジェクト型は、コマンドが想定しているパラメーターの型と、Windows 
    PowerShell が引数の適切な型への変換方法を認識しているかどうかによって
    異なります。次の表に、式から返された値に割り当てられる型の例を示します。


    例                 モード       結果
    ------------------ ----------   -----------------
    Write-Output !1    引数         "!1" (文字列)
    Write-Output (!1)  式           False (ブール値)
    Write-Output (2)   式           2 (整数値)


関連項目
    about_Command_Syntax




目次