about_Command_Syntax
適用対象: Windows PowerShell 2.0, Windows PowerShell 3.0
概要をここに挿入してください。
トピック
about_Command_Syntax
概要
Windows PowerShell® で使用される構文ダイアグラムについて説明します。
詳細説明
Get-Help および Get-Command コマンドレットは、コマンドの正しい構築に役立つ構文ダイアグラムを表示します。このトピックでは、構文ダイアグラムを解釈する方法について説明します。
構文ダイアグラム
コマンド構文ダイアグラム内の各パラグラフは、コマンドの有効な形式を表します。
コマンドを作成するには、構文ダイアグラムに左から右に従ってください。オプションのパラメーターの中から選択し、プレース ホルダーに値を指定します。
Windows PowerShell は構文ダイアグラムで次の表記を使用します。
<command-name> -<Required Parameter Name> <Required Parameter Value>
[-<Optional Parameter Name> <Optional Parameter Value>]
[-<Optional Switch Parameters>]
[-<Optional Parameter Name>] <Required Parameter Value>
New-Alias コマンドレットの構文を次に示します。
New-Alias [-Name] <string> [-Value] <string> [-Description <string>]
[-Force] [-Option {None | ReadOnly | Constant | Private | AllScope}]
[-PassThru] [-Scope <string>] [-Confirm] [-WhatIf] [<CommonParameters>]
構文は読みやすさのために大文字になっていますが、Windows PowerShell は大文字と小文字を区別します。
構文ダイアグラムには、次の要素があります。
コマンド名
------------
コマンドは、New-Alias など、常にコマンド名で始まります。コマンド名または、Get-Command に対する「gcm」のように、そのエイリアスを入力します。
パラメーター
----------
コマンドのパラメーターは、コマンドの動作を決定するオプションです。一部のパラメーターは、コマンドへのユーザー入力となる「値」を取ります。
たとえば、Get-Help コマンドには、ヘルプを表示するトピックの名前を指定できる Name パラメーターがあります。トピック名は Name パラメーターの値です。
Windows PowerShell コマンドでは、パラメーター名は常にハイフンで始まります。ハイフンは、Windows PowerShell に対して、コマンド内の項目がパラメーター名であることを通知します。
たとえば、New-Alias の Name パラメーターを使用するには、次のように入力します。
-Name
パラメーターには必須のものと省略可能なものがあります。構文ダイアグラムで、省略可能な項目は角かっこ ([ ]) で囲みます。
パラメーターの詳細については、「about_Parameters」を参照してください。
パラメーター値
----------------
パラメーター値は、パラメーターが受け取る入力です。Windows PowerShell は Microsoft .NET Framework に基づいているので、パラメーター値は、構文ダイアグラムの中で、その .NET 型によって表されます。
たとえば、Get-Help の Name パラメーターは、1 つまたは複数の単語が引用符で囲まれたテキスト文字列である String 値を取得します。
[-Name] <string>
.NET 型のパラメーター値は山かっこ (< >) で囲まれ、コマンドに入力したリテラルではなく、値のプレース ホルダーであることを示します。
パラメーターを使用するには、.NET 型のプレース ホルダーを指定の .NET 型を持つオブジェクトで置き換えます。
たとえば、Name パラメーターを使用するには、次のように、「-Name」の後に文字列を入力します。
-Name MyAlias
値を持たないパラメーター
-------------------------
一部のパラメーターは入力を受け取らないため、パラメーター値がありません。値を持たないパラメーターはスイッチのオン/オフのように動作するので、「スイッチ パラメーター」と呼ばれます。コマンドに含めるか (オン)、またはコマンドから省略します (オフ)。
スイッチ パラメーターを使用するには、パラメーター名の前にハイフンを入力するだけです。
たとえば、New-Alias コマンドレットの WhatIf パラメーターを使用するには、次のように入力します。
-WhatIf
パラメーター セット
--------------
コマンドのパラメーターは、パラメーター セットに列挙されます。パラメーター セットは構文ダイアグラムのパラグラフに似ています。
New-Alias コマンドレットは 1 つのパラメーターを持っていますが、多くのコマンドレットは複数のパラメーターのセットを持っています。コマンドレット パラメーターには、パラメーター セットに固有のものと、複数のパラメーターのセットに現れるものがあります。
各パラメーター セットは有効なコマンドの形式を表します。パラメーター セットにはコマンドとともに使用できるパラメーターのみが含まれます。パラメーターを同じコマンドで使用できない場合、それらは個別のパラメーター セットに表示されます。
たとえば、Get-Random コマンドレットには、次のパラメーター セットがあります。
Get-Random [[-Maximum] <Object>] [-Minimum <Object>] [-SetSeed <int>]
[<CommonParameters>]
Get-Random [-InputObject] <Object[]> [-Count <int>] [-SetSeed <int>]
[<CommonParameters>]
ランダムな数を返す最初のパラメーター セットには、Minimum および Maximum パラメーターがあります。オブジェクトのセットから選択されたオブジェクトをランダムに返す、2 番目のパラメーター セットには、InputObject および Countパラメーターがあります。両方のパラメーター セットには、Set-Seed パラメーターおよび共通のパラメーターが含まれます。
これらのパラメーター セットは、InputObject および Count パラメーターを同じコマンドで使用できるものの、Maximum および Count パラメーターを同じコマンドで使用できないことを示しています。
パラメーター セットに含まれるパラメーターを使用することで、そのパラメーター セットを使用することを指定します。
ただし、すべてのコマンドレットには既定のパラメーター セットもあります。パラメーター セットに固有のパラメーターを指定しない場合、既定のパラメーター セットが使用されます。たとえば、パラメーターなしで Get-Random を使用した場合、Windows PowerShell は、Number パラメーター セットを使用すると想定し、乱数値を返します。
各パラメーター セットで、パラメーターは位置の順序で表示されます。オプションのパラメーター名を省略した場合にのみ、コマンド内のパラメーターの順序が意味を持ちます。パラメーター名を省略すると、Windows PowerShell は、位置および種類によって、パラメーターに値を割り当てます。パラメーターの位置の詳細については、「about_Parameters」を参照してください。
構文ダイアグラム内の記号
構文ダイアグラムには、コマンド名、コマンドのパラメーター、およびパラメーター値が一覧表示されます。また、有効なコマンドを構成する方法を示すために記号も使用します。
構文ダイアグラムは次の記号を使用します。
-- ハイフン (-) はパラメーター名を示します。コマンドでは、構文ダイアグラムに示すように、パラメーター名の直前にスペースを置かずにハイフンを入力します。
たとえば、New-Alias の Name パラメーターを使用するには、次のように入力します。
-Name
-- 山かっこ (<>) はプレースホルダー テキストを示します。コマンド内に山かっこまたはプレースホルダー テキストを入力しないでください。代わりに、それが説明している項目に置き換えます。
山かっこを使用して、パラメーターが取得する値の .NET 型を特定します。たとえば、New-Alias コマンドレットの Name パラメーターを使用するには、<文字列> を、引用符で囲まれた 1 つの単語または単語のグループで置き換えます。
-- 角かっこ ([ ]) は省略可能な項目を示します。パラメーターとその値は省略可能である場合があり、必須パラメーターの名前が省略可能である場合もあります。
たとえば、New-Alias の Description パラメーターとその値は、両方とも省略可能なので角かっこで囲みます。
[-Description <string>]
この角かっこは、Name パラメーター値 (<文字列>) は必須であるものの、パラメーター名「Name」は省略可能であることも示しています。
[-Name] <string>
-- .NET 型に追加される右および左の角かっこ ([]) は、パラメーターがその型の 1 つまたは複数の値を受け入れることを示します。コンマ区切りのリストで、値を入力します。
たとえば、New-Alias コマンドレットの Name パラメーターはただ 1 つの文字列を受け入れますが、Get-Process の Name パラメーターは 1 つまたは複数の文字列を受け入れることができます。
New-Alias [-Name] <string>
New-Alias -Name MyAlias
Get-Process [-Name] <string[]>
Get-Process -Name Explorer, Winlogon, Services
-- 中かっこ ({}) は、パラメーターの有効な値のセットである「列挙体」を示します。
中かっこ内の値は、縦棒 (|) で区切られます。これらの縦棒は「排他的 OR」選択を示します。つまり、中かっこ内に表示される値のセットからただ 1 つの値を選択できます。
たとえば、New-alias コマンドレットの構文には、Option パラメーターに次の値列挙体が含まれています。
-Option {None | ReadOnly | Constant | Private | AllScope}
中かっこと縦棒は、ReadOnly または AllScope など、Option パラメーターに対して一覧表示された値のいずれかを選択できることを示します。
-Option ReadOnly
省略可能な項目
角かっこ ([]) は、省略可能な項目を囲みます。たとえば、New-Alias コマンドレットの構文の説明で、Scope パラメーターは省略できます。これは構文では、パラメーター名と型の周囲のかっこで示されます。
[-Scope <string>]
次の例は両方とも、New-Alias コマンドレットの正しい使い方を示します。
New-Alias -Name utd -Value Update-TypeData
New-Alias -Name utd -Value Update-TypeData -Scope global
パラメーター名は、そのパラメーターの値が必須であっても、省略可能な場合があります。この New-Alias コマンドレットの例のように、構文では、パラメーター名の周囲に中かっこがあり、パラメーター型の周囲にはないことで示されます。
[-Name] <string> [-Value] <string>
次のコマンドは、New-Alias コマンドレットを正しく使用しています。これらのコマンドの結果は同じになります。
New-Alias -Name utd -Value Update-TypeData
New-Alias -Name utd Update-TypeData
New-Alias utd -Value Update-TypeData
New-Alias utd Update-TypeData
パラメーター名が入力されたとおりにステートメントに含まれていない場合、Windows PowerShell は、パラメーターに値を割り当てるために、引数の位置を使用することを試みます。
次の例は完全ではありません。
New-Alias utd
このコマンドレットには、Name および Value パラメーターの両方の値が必要です。
構文の例で、角かっこは名前付けと .NET Framework 型へのキャストにも使用されます。このコンテキストで、角かっこは要素が省略可能であることを示しません。
キーワード
about_Symbols
about_Punctuation
about_Help_Syntax
関連項目
about_Parameters
Get-Command
Get-Help