Functions についてAbout Functions

簡単な説明Short description

PowerShell で関数を作成して使用する方法について説明します。Describes how to create and use functions in PowerShell.

長い説明Long description

関数とは、割り当てた名前を持つ PowerShell ステートメントの一覧です。A function is a list of PowerShell statements that has a name that you assign. 関数を実行するときは、関数名を入力します。When you run a function, you type the function name. リスト内のステートメントは、コマンドプロンプトで入力した場合と同じように実行されます。The statements in the list run as if you had typed them at the command prompt.

関数は、次のような単純なものにすることができます。Functions can be as simple as:

function Get-PowerShellProcess { Get-Process PowerShell }

関数は、コマンドレットまたはアプリケーションプログラムと同じように複雑にすることもできます。A function can also be as complex as a cmdlet or an application program.

コマンドレットと同様に、関数はパラメーターを持つことができます。Like cmdlets, functions can have parameters. パラメーターには、名前付き、位置指定、スイッチ、または動的パラメーターを指定できます。The parameters can be named, positional, switch, or dynamic parameters. 関数のパラメーターは、コマンドラインまたはパイプラインから読み取ることができます。Function parameters can be read from the command line or from the pipeline.

関数は、表示、変数への代入、または他の関数やコマンドレットに渡すことができる値を返すことができます。Functions can return values that can be displayed, assigned to variables, or passed to other functions or cmdlets. キーワードを使用して戻り値を指定することもでき return ます。You can also specify a return value using the return keyword. キーワードは、 return 関数から返される他の出力には影響しません。The return keyword does not affect or suppress other output returned from your function. ただし、 return キーワードはその行の関数を終了します。However, the return keyword exits the function at that line. 詳細については、「 about_Return」を参照してください。For more information, see about_Return.

関数のステートメントリストには、キーワード、、およびを使用して、さまざまな種類のステートメントリストを含めることができ Begin Process End ます。The function's statement list can contain different types of statement lists with the keywords Begin, Process, and End. これらのステートメントでは、パイプラインからの入力の処理方法が異なります。These statement lists handle input from the pipeline differently.

フィルターは、キーワードを使用する特別な種類の関数です FilterA filter is a special kind of function that uses the Filter keyword.

関数は、コマンドレットのように機能することもできます。Functions can also act like cmdlets. プログラミングを使用せずに、コマンドレットと同じように動作する関数を作成でき C# ます。You can create a function that works just like a cmdlet without using C# programming. 詳細については、「 about_Functions_Advanced」を参照してください。For more information, see about_Functions_Advanced.

構文Syntax

関数の構文を次に示します。The following is the syntax for a function:

function [<scope:>]<name> [([type]$parameter1[,[type]$parameter2])]
{
  param([type]$parameter1 [,[type]$parameter2])
  dynamicparam {<statement list>}
  begin {<statement list>}
  process {<statement list>}
  end {<statement list>}
}

関数には、次の項目が含まれます。A function includes the following items:

  • FunctionキーワードA Function keyword
  • スコープ (省略可能)A scope (optional)
  • 選択した名前A name that you select
  • 任意の数の名前付きパラメーター (省略可能)Any number of named parameters (optional)
  • 中かっこで囲まれた1つ以上の PowerShell コマンド {}One or more PowerShell commands enclosed in braces {}

Dynamicparam関数のキーワードと動的パラメーターの詳細については、「 about_Functions_Advanced_Parameters」を参照してください。For more information about the Dynamicparam keyword and dynamic parameters in functions, see about_Functions_Advanced_Parameters.

単純な関数Simple Functions

関数は、役に立つために複雑である必要はありません。Functions do not have to be complicated to be useful. 最も単純な関数の形式は次のとおりです。The simplest functions have the following format:

function <function-name> {statements}

たとえば、次の関数は、[管理者として実行] オプションを使用して PowerShell を起動します。For example, the following function starts PowerShell with the Run as Administrator option.

function Start-PSAdmin {Start-Process PowerShell -Verb RunAs}

関数を使用するには、次のように入力します。 Start-PSAdminTo use the function, type: Start-PSAdmin

関数にステートメントを追加するには、各ステートメントを別の行に入力するか、セミコロンを使用し ; てステートメントを区切ります。To add statements to the function, type each statement on a separate line, or use a semi-colon ; to separate the statements.

たとえば、次の関数は、 .jpg 開始日以降に変更された、現在のユーザーのディレクトリにあるすべてのファイルを検索します。For example, the following function finds all .jpg files in the current user's directories that were changed after the start date.

function Get-NewPix
{
  $start = Get-Date -Month 1 -Day 1 -Year 2010
  $allpix = Get-ChildItem -Path $env:UserProfile\*.jpg -Recurse
  $allpix | Where-Object {$_.LastWriteTime -gt $Start}
}

便利な小さい関数のツールボックスを作成できます。You can create a toolbox of useful small functions. これらの関数を PowerShell プロファイルに追加します。詳細については、このトピックの「 about_Profiles 」を参照してください。Add these functions to your PowerShell profile, as described in about_Profiles and later in this topic.

関数名Function Names

関数には任意の名前を割り当てることができますが、他のユーザーと共有する関数は、すべての PowerShell コマンドに対して設定されている名前付け規則に従う必要があります。You can assign any name to a function, but functions that you share with others should follow the naming rules that have been established for all PowerShell commands.

関数名は、動詞と名詞のペアで構成されている必要があります。動詞は、関数が実行するアクションを識別し、名詞は、コマンドレットがアクションを実行する項目を識別します。Functions names should consist of a verb-noun pair in which the verb identifies the action that the function performs and the noun identifies the item on which the cmdlet performs its action.

関数は、すべての PowerShell コマンドに対して承認された標準動詞を使用する必要があります。Functions should use the standard verbs that have been approved for all PowerShell commands. これらの動詞を使用すると、コマンド名を簡単かつ一貫性のあるものにし、ユーザーが理解しやすいものにすることができます。These verbs help us to keep our command names simple, consistent, and easy for users to understand.

標準の PowerShell 動詞の詳細については、「Microsoft Docs での承認された 動詞 」を参照してください。For more information about the standard PowerShell verbs, see Approved Verbs in the Microsoft Docs.

パラメーターを持つ関数Functions with Parameters

パラメーターには、名前付きパラメーター、位置指定パラメーター、スイッチパラメーター、動的パラメーターなどの関数を使用できます。You can use parameters with functions, including named parameters, positional parameters, switch parameters, and dynamic parameters. 関数の動的パラメーターの詳細については、「 about_Functions_Advanced_Parameters」を参照してください。For more information about dynamic parameters in functions, see about_Functions_Advanced_Parameters.

名前付きパラメーターNamed Parameters

任意の数の名前付きパラメーターを定義できます。You can define any number of named parameters. このトピックで後述するように、名前付きパラメーターの既定値を含めることができます。You can include a default value for named parameters, as described later in this topic.

Param次のサンプル構文に示すように、キーワードを使用して、中かっこ内にパラメーターを定義できます。You can define parameters inside the braces using the Param keyword, as shown in the following sample syntax:

function <name> {
  param ([type]$parameter1[,[type]$parameter2])
  <statement list>
}

Param次のサンプル構文に示すように、キーワードを使用せずに、中かっこの外側にパラメーターを定義することもできます。You can also define parameters outside the braces without the Param keyword, as shown in the following sample syntax:

function <name> [([type]$parameter1[,[type]$parameter2])] {
  <statement list>
}

この代替構文の例を次に示します。Below is an example of this alternative syntax.

Function Add-Numbers($one, $two) {
    $one + $two
}

最初の方法をお勧めしますが、この2つの方法に違いはありません。While the first method is preferred, there is no difference between these two methods.

関数を実行すると、パラメーターに指定した値が、パラメーター名を含む変数に代入されます。When you run the function, the value you supply for a parameter is assigned to a variable that contains the parameter name. この変数の値は、関数で使用できます。The value of that variable can be used in the function.

次の例は、という関数を示して Get-SmallFiles います。The following example is a function called Get-SmallFiles. この関数には $Size パラメーターがあります。This function has a $Size parameter. 関数は、パラメーターの値よりも小さいすべてのファイルを表示 $Size し、ディレクトリを除外します。The function displays all the files that are smaller than the value of the $Size parameter, and it excludes directories:

function Get-SmallFiles {
  Param($Size)
  Get-ChildItem $HOME | Where-Object {
    $_.Length -lt $Size -and !$_.PSIsContainer
  }
}

関数では、 $Size パラメーターに定義されている名前である変数を使用できます。In the function, you can use the $Size variable, which is the name defined for the parameter.

この関数を使用するには、次のコマンドを入力します。To use this function, type the following command:

Get-SmallFiles -Size 50

パラメーター名を指定せずに名前付きパラメーターの値を入力することもできます。You can also enter a value for a named parameter without the parameter name. たとえば、次のコマンドでは、 Size パラメーターに名前を付けたコマンドと同じ結果が得られます。For example, the following command gives the same result as a command that names the Size parameter:

Get-SmallFiles 50

パラメーターの既定値を定義するには、次の例に示すように、等号とパラメーター名の後に値を入力し Get-SmallFiles ます。To define a default value for a parameter, type an equal sign and the value after the parameter name, as shown in the following variation of the Get-SmallFiles example:

function Get-SmallFiles ($Size = 100) {
  Get-ChildItem $HOME | Where-Object {
    $_.Length -lt $Size -and !$_.PSIsContainer
  }
}

Get-SmallFiles値を指定せずにを入力すると、関数は100をに割り当て $size ます。If you type Get-SmallFiles without a value, the function assigns 100 to $size. 値を指定した場合、関数はその値を使用します。If you provide a value, the function uses that value.

必要に応じて、パラメーターの既定値を説明する簡単なヘルプ文字列を指定できます。これには、パラメーターの説明に psdefaultvalue 属性を追加し、 Psdefaultvaluehelp プロパティを指定します。Optionally, you can provide a brief help string that describes the default value of your parameter, by adding the PSDefaultValue attribute to the description of your parameter, and specifying the Help property of PSDefaultValue. 関数の Size パラメーターの既定値 (100) を説明するヘルプ文字列を指定するには Get-SmallFiles 、次の例に示すように psdefaultvalue 属性を追加します。To provide a help string that describes the default value (100) of the Size parameter in the Get-SmallFiles function, add the PSDefaultValue attribute as shown in the following example.

function Get-SmallFiles {
  param (
      [PSDefaultValue(Help = '100')]
      $Size = 100
  )
}

Psdefaultvalue 属性クラスの詳細については、「 Psdefaultvalue 属性のメンバー」を参照してください。For more information about the PSDefaultValue attribute class, see PSDefaultValue Attribute Members.

位置指定パラメーターPositional Parameters

位置指定パラメーターは、パラメーター名のないパラメーターです。A positional parameter is a parameter without a parameter name. PowerShell では、パラメーター値の順序を使用して、各パラメーター値を関数のパラメーターに関連付けます。PowerShell uses the parameter value order to associate each parameter value with a parameter in the function.

位置指定パラメーターを使用する場合は、関数名の後に1つ以上の値を入力します。When you use positional parameters, type one or more values after the function name. 位置指定パラメーターの値は配列変数に代入され $args ます。Positional parameter values are assigned to the $args array variable. 関数名の後の値は、配列内の最初の位置に割り当てられ $args $args[0] ます。The value that follows the function name is assigned to the first position in the $args array, $args[0].

次の関数は、指定したファイル Get-Extension .txt 名にファイル名拡張子を追加します。The following Get-Extension function adds the .txt file name extension to a file name that you supply:

function Get-Extension {
  $name = $args[0] + ".txt"
  $name
}
Get-Extension myTextFile
myTextFile.txt

スイッチパラメーターSwitch Parameters

スイッチは、値を必要としないパラメーターです。A switch is a parameter that does not require a value. 代わりに、関数名の後にスイッチパラメーターの名前を入力します。Instead, you type the function name followed by the name of the switch parameter.

スイッチパラメーターを定義するには、 [switch] 次の例に示すように、パラメーター名の前に型を指定します。To define a switch parameter, specify the type [switch] before the parameter name, as shown in the following example:

function Switch-Item {
  param ([switch]$on)
  if ($on) { "Switch on" }
  else { "Switch off" }
}

On関数名の後に switch パラメーターを入力すると、関数は "switch on" を表示します。When you type the On switch parameter after the function name, the function displays "Switch on". スイッチパラメーターを指定しない場合は、"Switch off" が表示されます。Without the switch parameter, it displays "Switch off".

Switch-Item -on
Switch on
Switch-Item
Switch off

次の例に示すように、関数を実行するときに、スイッチに ブール 値を割り当てることもできます。You can also assign a Boolean value to a switch when you run the function, as shown in the following example:

Switch-Item -on:$true
Switch on
Switch-Item -on:$false
Switch off

スプラッティングを使用してコマンドパラメーターを表すUsing Splatting to Represent Command Parameters

スプラッティングを使用して、コマンドのパラメーターを表すことができます。You can use splatting to represent the parameters of a command. この機能は、Windows PowerShell 3.0 で導入されました。This feature is introduced in Windows PowerShell 3.0.

この手法は、セッションでコマンドを呼び出す関数で使用します。Use this technique in functions that call commands in the session. コマンドパラメーターを宣言または列挙したり、コマンドパラメーターが変更されたときに関数を変更したりする必要はありません。You do not need to declare or enumerate the command parameters, or change the function when command parameters change.

次のサンプル関数は、 Get-Command コマンドレットを呼び出します。The following sample function calls the Get-Command cmdlet. このコマンドは、を使用して @Args のパラメーターを表し Get-Command ます。The command uses @Args to represent the parameters of Get-Command.

function Get-MyCommand { Get-Command @Args }

関数を呼び出すときに、のすべてのパラメーターを使用でき Get-Command Get-MyCommand ます。You can use all of the parameters of Get-Command when you call the Get-MyCommand function. パラメーターとパラメーター値は、を使用してコマンドに渡され @Args ます。The parameters and parameter values are passed to the command using @Args.

Get-MyCommand -Name Get-ChildItem
CommandType     Name                ModuleName
-----------     ----                ----------
Cmdlet          Get-ChildItem       Microsoft.PowerShell.Management

この @Args 機能は $Args 自動パラメーターを使用します。これは、宣言されていないコマンドレットパラメーターと残りの引数の値を表します。The @Args feature uses the $Args automatic parameter, which represents undeclared cmdlet parameters and values from remaining arguments.

スプラッティングの詳細については、「 about_Splatting」を参照してください。For more information about splatting, see about_Splatting.

オブジェクトを関数にパイプするPiping Objects to Functions

すべての関数は、パイプラインからの入力を受け取ることができます。Any function can take input from the pipeline. 、、およびキーワードを使用して、関数がパイプラインからの入力を処理する方法を制御でき Begin Process End ます。You can control how a function processes input from the pipeline using Begin, Process, and End keywords. 次のサンプル構文は、3つのキーワードを示しています。The following sample syntax shows the three keywords:

function <name> {
  begin {<statement list>}
  process {<statement list>}
  end {<statement list>}
}

Beginステートメントリストは、関数の先頭で1回だけ実行されます。The Begin statement list runs one time only, at the beginning of the function.

重要

関数で、、またはブロックが定義されている場合は、 Begin Process End すべてのコードがそのブロック内に存在する必要があります。If your function defines a Begin, Process or End block, all of your code must reside inside those blocks. ブロックの いずれか が定義されている場合、ブロックの外側ではコードが認識されません。No code will be recognized outside the blocks if any of the blocks are defined.

ステートメントの一覧は、 Process パイプライン内の各オブジェクトに対して1回実行されます。The Process statement list runs one time for each object in the pipeline. Processブロックが実行されている間、各パイプラインオブジェクトは、一度に1つのパイプラインオブジェクトに対して自動変数に割り当てられ $_ ます。While the Process block is running, each pipeline object is assigned to the $_ automatic variable, one pipeline object at a time.

関数がパイプライン内のすべてのオブジェクトを受け取ると、 End ステートメントの一覧が1回だけ実行されます。After the function receives all the objects in the pipeline, the End statement list runs one time. 、、またはキーワードが使用されていない場合は、 Begin Process End すべてのステートメントがステートメントリストと同様に扱われ End ます。If no Begin, Process, or End keywords are used, all the statements are treated like an End statement list.

次の関数では、キーワードを使用し Process ます。The following function uses the Process keyword. この関数は、パイプラインの例を表示します。The function displays examples from the pipeline:

function Get-Pipeline
{
  process {"The value is: $_"}
}

この関数を示すには、次の例に示すように、コンマで区切られた数値のリストを入力します。To demonstrate this function, enter an list of numbers separated by commas, as shown in the following example:

1,2,4 | Get-Pipeline
The value is: 1
The value is: 2
The value is: 4

パイプラインで関数を使用すると、関数にパイプされたオブジェクトが自動変数に割り当てられ $input ます。When you use a function in a pipeline, the objects piped to the function are assigned to the $input automatic variable. 関数は、 Begin オブジェクトがパイプラインから取得される前に、キーワードを使用してステートメントを実行します。The function runs statements with the Begin keyword before any objects come from the pipeline. 関数は、 End すべてのオブジェクトがパイプラインから受信された後、キーワードを使用してステートメントを実行します。The function runs statements with the End keyword after all the objects have been received from the pipeline.

次の例は、 $input キーワードとキーワードを使用した自動変数を示して Begin End います。The following example shows the $input automatic variable with Begin and End keywords.

function Get-PipelineBeginEnd
{
  begin {"Begin: The input is $input"}
  end {"End:   The input is $input" }
}

パイプラインを使用してこの関数を実行すると、次の結果が表示されます。If this function is run by using the pipeline, it displays the following results:

1,2,4 | Get-PipelineBeginEnd
Begin: The input is
End:   The input is 1 2 4

ステートメントの実行時に、この Begin 関数にはパイプラインからの入力がありません。When the Begin statement runs, the function does not have the input from the pipeline. ステートメントは、 End 関数の値がの後に実行されます。The End statement runs after the function has the values.

関数にキーワードがある場合 Process 、内の各オブジェクト $input はから削除され、 $input に割り当てられ $_ ます。If the function has a Process keyword, each object in $input is removed from $input and assigned to $_. 次の例には、ステートメントの一覧があり Process ます。The following example has a Process statement list:

function Get-PipelineInput
{
  process {"Processing:  $_ " }
  end {"End:   The input is: $input" }
}

この例では、関数にパイプ処理された各オブジェクトが、ステートメントリストに送信され Process ます。In this example, each object that is piped to the function is sent to the Process statement list. ステートメントは、 Process 各オブジェクトに対して一度に1つずつ実行されます。The Process statements run on each object, one object at a time. $input関数がキーワードに達した場合、自動変数は空になり End ます。The $input automatic variable is empty when the function reaches the End keyword.

1,2,4 | Get-PipelineInput
Processing:  1
Processing:  2
Processing:  4
End:   The input is:

詳細については、「列挙子の使用」を参照してください。For more information, see Using Enumerators

フィルターFilters

フィルターは、パイプライン内の各オブジェクトに対して実行される関数の一種です。A filter is a type of function that runs on each object in the pipeline. フィルターは、ブロック内のすべてのステートメントを含む関数に似て Process います。A filter resembles a function with all its statements in a Process block.

フィルターの構文は次のとおりです。The syntax of a filter is as follows:

filter [<scope:>]<name> {<statement list>}

次のフィルターは、パイプラインからログエントリを受け取り、エントリ全体を表示するか、エントリのメッセージ部分のみを表示します。The following filter takes log entries from the pipeline and then displays either the whole entry or only the message portion of the entry:

filter Get-ErrorLog ([switch]$message)
{
  if ($message) { Out-Host -InputObject $_.Message }
  else { $_ }
}

関数のスコープFunction Scope

関数は、それが作成されたスコープ内に存在します。A function exists in the scope in which it was created.

関数がスクリプトの一部である場合、関数はそのスクリプト内のステートメントで使用できます。If a function is part of a script, the function is available to statements within that script. 既定では、スクリプト内の関数はコマンドプロンプトでは使用できません。By default, a function in a script is not available at the command prompt.

関数のスコープを指定できます。You can specify the scope of a function. たとえば、次の例では、関数がグローバルスコープに追加されます。For example, the function is added to the global scope in the following example:

function global:Get-DependentSvs {
  Get-Service | Where-Object {$_.DependentServices}
}

関数がグローバルスコープ内にある場合は、スクリプト、関数、およびコマンドラインで関数を使用できます。When a function is in the global scope, you can use the function in scripts, in functions, and at the command line.

関数は、通常、スコープを作成します。Functions normally create a scope. 変数などの関数で作成されたアイテムは、関数スコープにのみ存在します。The items created in a function, such as variables, exist only in the function scope.

PowerShell のスコープの詳細については、「 about_Scopes」を参照してください。For more information about scope in PowerShell, see about_Scopes.

関数を使用した関数の検索と管理: ドライブFinding and Managing Functions Using the Function: Drive

PowerShell のすべての関数とフィルターは、自動的にドライブに格納され Function: ます。All the functions and filters in PowerShell are automatically stored in the Function: drive. このドライブは、PowerShell 関数 プロバイダーによって公開されています。This drive is exposed by the PowerShell Function provider.

ドライブを参照するとき Function: は、コンピューターのまたはドライブを参照する場合と同様に、 関数 の後にコロンを入力し C D ます。When referring to the Function: drive, type a colon after Function , just as you would do when referencing the C or D drive of a computer.

次のコマンドは、PowerShell の現在のセッションのすべての関数を表示します。The following command displays all the functions in the current session of PowerShell:

Get-ChildItem function:

関数内のコマンドは、関数の definition プロパティにスクリプトブロックとして格納されます。The commands in the function are stored as a script block in the definition property of the function. たとえば、PowerShell に付属する Help 関数のコマンドを表示するには、次のように入力します。For example, to display the commands in the Help function that comes with PowerShell, type:

(Get-ChildItem function:help).Definition

次の構文を使用することもできます。You can also use the following syntax.

$function:help

ドライブの詳細については Function:関数 プロバイダーのヘルプトピックを参照してください。For more information about the Function: drive, see the help topic for the Function provider. Get-Help Function」と入力します。Type Get-Help Function.

新しいセッションでの関数の再利用Reusing Functions in New Sessions

PowerShell コマンドプロンプトで関数を入力すると、関数が現在のセッションの一部になります。When you type a function at the PowerShell command prompt, the function becomes part of the current session. セッションが終了するまで使用できます。It is available until the session ends.

すべての PowerShell セッションで関数を使用するには、関数を PowerShell プロファイルに追加します。To use your function in all PowerShell sessions, add the function to your PowerShell profile. プロファイルの詳細については、「about_Profiles」を参照してください。For more information about profiles, see about_Profiles.

また、関数を PowerShell スクリプトファイルに保存することもできます。You can also save your function in a PowerShell script file. テキストファイルに関数を入力し、ファイル名拡張子を付けてファイルを保存し .ps1 ます。Type your function in a text file, and then save the file with the .ps1 file name extension.

関数のヘルプの記述Writing Help for Functions

Get-Helpコマンドレットは、コマンドレット、プロバイダー、およびスクリプトに加えて、関数のヘルプを取得します。The Get-Help cmdlet gets help for functions, as well as for cmdlets, providers, and scripts. 関数のヘルプを表示するには、 Get-Help 関数名の後に「」と入力します。To get help for a function, type Get-Help followed by the function name.

たとえば、関数のヘルプを表示するには、次のように Get-MyDisks 入力します。For example, to get help for the Get-MyDisks function, type:

Get-Help Get-MyDisks

関数のヘルプは、次の2つの方法のいずれかを使用して記述できます。You can write help for a function by using either of the two following methods:

  • 関数のヘルプの Comment-BasedComment-Based Help for Functions

    コメントに特殊なキーワードを使用して、ヘルプトピックを作成します。Create a help topic by using special keywords in the comments. 関数のコメントベースのヘルプを作成するには、関数本体の先頭または末尾にコメントを配置するか、関数キーワードの前の行に記述する必要があります。To create comment-based help for a function, the comments must be placed at the beginning or end of the function body or on the lines preceding the function keyword. コメントベースのヘルプの詳細については、「 about_Comment_Based_Help」を参照してください。For more information about comment-based help, see about_Comment_Based_Help.

  • 関数のヘルプの XML-BasedXML-Based Help for Functions

    コマンドレットに対して通常作成される型など、XML ベースのヘルプトピックを作成します。Create an XML-based help topic, such as the type that is typically created for cmdlets. ヘルプトピックを複数の言語にローカライズする場合は、XML ベースのヘルプが必要です。XML-based help is required if you are localizing help topics into multiple languages.

    関数を XML ベースのヘルプトピックに関連付けるには、 .ExternalHelp コメントベースのヘルプキーワードを使用します。To associate the function with the XML-based help topic, use the .ExternalHelp comment-based help keyword. このキーワードがない場合、は Get-Help 関数のヘルプトピックを見つけることができず、関数に対してを呼び出すと、 Get-Help 自動生成されたヘルプだけが返されます。Without this keyword, Get-Help cannot find the function help topic and calls to Get-Help for the function return only auto-generated help.

    キーワードの詳細については ExternalHelp 、「 about_Comment_Based_Help」を参照してください。For more information about the ExternalHelp keyword, see about_Comment_Based_Help. XML ベースのヘルプの詳細については、「 How To Write Cmdlet help」を参照してください。For more information about XML-based help, see How to Write Cmdlet Help.

関連項目See also

about_Automatic_Variablesabout_Automatic_Variables

about_Comment_Based_Helpabout_Comment_Based_Help

about_Functions_Advancedabout_Functions_Advanced

about_Functions_Advanced_Methodsabout_Functions_Advanced_Methods

about_Functions_Advanced_Parametersabout_Functions_Advanced_Parameters

about_Functions_CmdletBindingAttributeabout_Functions_CmdletBindingAttribute

about_Functions_OutputTypeAttributeabout_Functions_OutputTypeAttribute

about_Parametersabout_Parameters

about_Profilesabout_Profiles

about_Scopesabout_Scopes

about_Script_Blocksabout_Script_Blocks

about_Function_providerabout_Function_provider