簡単な説明
任意のコマンドレットで使用できるパラメーターについて説明します。
長い説明
一般的なパラメーターは、任意のコマンドレットで使用できる一連のコマンドレット パラメーターです。 これらはコマンドレット開発者ではなく PowerShell によって実装され、任意のコマンドレットで自動的に使用できます。
共通パラメーターは任意のコマンドレットで使用できますが、すべてのコマンドレットに影響を与えるわけではありません。 たとえば、コマンドレットで詳細な出力が生成されない場合、Verbose 共通パラメーターを使用しても効果はありません。
共通パラメーターは、 CmdletBinding 属性または Parameter 属性を使用する高度な関数でも使用できます。 これらの属性を使用すると、PowerShell によって共通パラメーターが自動的に追加されます。 共通パラメーターと同じ名前を使用するパラメーターは作成できません。
いくつかの一般的なパラメーターは、PowerShell 基本設定変数を使用して設定したシステムの既定値または基本設定をオーバーライドします。 基本設定変数とは異なり、一般的なパラメーターは、それらが使用されているコマンドにのみ影響します。
詳細については、「about_Preference_Variables」 を参照してください。
次の一覧に共通パラメーターが表示されます。 それらのエイリアスはかっこで囲まれています。
-
Debug(db) -
ErrorAction(ea) -
ErrorVariable(ev) -
InformationAction(infa) -
InformationVariable(iv) -
OutVariable(ov) -
OutBuffer(ob) -
PipelineVariable(pv) -
ProgressAction(proga) -
Verbose(VB) -
WarningAction(wa) -
WarningVariable(wv)
Action パラメーターはActionPreference型の値です。
ActionPreference は、次の値を持つ列挙型です。
| 名前 | 値 |
|---|---|
Break |
6 |
Suspend |
5 |
Ignore |
4 |
Inquire |
3 |
Continue |
2 |
Stop |
1 |
SilentlyContinue |
0 |
パラメーターには、名前または値を使用できます。
一般的なパラメーターに加えて、多くのコマンドレットでリスク軽減パラメーターが提供されています。 システムまたはユーザー データに対するリスクを伴うコマンドレットは、通常、これらのパラメーターを提供します。
リスク軽減パラメーターは次のとおりです。
-
WhatIf(wi) -
Confirm(参照)
共通パラメーター
-Debug
コマンドによって実行された操作に関するプログラマ レベルの詳細を表示します。 このパラメーターは、コマンドがデバッグ メッセージを生成する場合にのみ機能します。 たとえば、このパラメーターは、コマンドに Write-Debug コマンドレットが含まれている場合に機能します。
Type: SwitchParameter
Aliases: db
Required: False
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: False
既定では、 $DebugPreference 変数の値が SilentlyContinueされているため、デバッグ メッセージは表示されません。
Debug パラメーターは、現在のコマンドの$DebugPreference変数の値をオーバーライドし、$DebugPreferenceの値をContinueに設定します。
-Debug:$true は、 -Debugと同じ効果を持ちます。
-Debug:$falseを使用して、$DebugPreferenceがSilentlyContinueされていない場合のデバッグ メッセージの表示を抑制します。これは既定です。
-エラーアクション
コマンドから終了しないエラーにコマンドレットが応答する方法を決定します。
このパラメーターは、コマンドが終了しないエラー ( Write-Error コマンドレットのエラーなど) を生成する場合にのみ機能します。
Type: ActionPreference
Aliases: ea
Accepted values: Break, Suspend, Ignore, Inquire, Continue, Stop, SilentlyContinue
Required: False
Position: Named
Default value: Depends on preference variable
Accept pipeline input: False
Accept wildcard characters: False
ErrorAction パラメーターは、現在のコマンドの$ErrorActionPreference変数の値をオーバーライドします。
$ErrorActionPreference変数の既定値はContinueされているため、ErrorAction パラメーターを使用しない限り、エラー メッセージが表示され、実行が続行されます。
ErrorAction パラメーターは、コマンドの正常な完了を妨げる終了エラー (データの欠落、無効なパラメーター、アクセス許可の不十分など) には影響しません。
-
Breakエラーが発生したとき、または例外が発生したときにデバッガーを入力します。 -
Continueはエラー メッセージを表示し、コマンドの実行を続行します。Continueは既定値です。 -
Ignoreは、エラー メッセージを抑制し、コマンドの実行を続行します。SilentlyContinueとは異なり、Ignoreは$Error自動変数にエラー メッセージを追加しません。Ignore値は、PowerShell 3.0 で導入されています。 -
Inquireはエラー メッセージを表示し、実行を続行する前に確認を求められます。 この値はほとんど使用しません。 -
SilentlyContinueは、エラー メッセージを抑制し、コマンドの実行を続行します。 -
Stopはエラー メッセージを表示し、コマンドの実行を停止します。 -
Suspendは、PowerShell 6 以降でサポートされていないワークフローでのみ使用できます。
注
ErrorAction パラメーターはオーバーライドされますが、スクリプトまたは関数を実行するコマンドでパラメーターを使用する場合、$ErrorActionPreference変数の値は置き換えられません。
-エラー変数
エラー レコードは、 $Error 自動変数に自動的に格納されます。 詳細については、「about_Automatic_Variables」 を参照してください。
コマンドで ErrorVariable パラメーターを使用すると、PowerShell では、コマンドによって出力されたエラー レコードもパラメーターで指定された変数に格納されます。
Type: String
Aliases: ev
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
既定では、新しいエラー メッセージによって、変数に既に格納されているエラー メッセージが上書きされます。 変数の内容にエラー メッセージを追加するには、変数名の前にプラス記号 (+) を付けます。
たとえば、次のコマンドは、 $a 変数を作成し、エラーを格納します。
Get-Process -Id 6 -ErrorVariable a
次のコマンドは、エラー メッセージを $a 変数に追加します。
Get-Process -Id 2 -ErrorVariable +a
次のコマンドは、 $aの内容を表示します。
$a
このパラメーターを使用すると、特定のコマンドからのエラー メッセージのみを含み、 $Error 自動変数の動作には影響しない変数を作成できます。
$Error自動変数には、セッション内のすべてのコマンドからのエラー メッセージが含まれています。
$a[0]や$Error[1,2]などの配列表記を使用して、変数に格納されている特定のエラーを参照できます。
注
カスタム エラー変数には、入れ子になった関数またはスクリプトの呼び出しからのエラーを含め、コマンドによって生成されたすべてのエラーが含まれます。
-InformationAction(インフォメーションアクション)
PowerShell 5.0 で導入されました。 使用するコマンドまたはスクリプト内で、InformationAction共通パラメーターは、既定で $InformationPreference に設定されているSilentlyContinue基本設定変数の値をオーバーライドします。
Write-Informationを含むスクリプトでInformationActionを使用すると、Write-Information パラメーターの値に応じてInformationAction値が表示されます。
$InformationPreferenceの詳細については、「about_Preference_Variables」を参照してください。
Type: ActionPreference
Aliases: infa
Accepted values: Break, Suspend, Ignore, Inquire, Continue, Stop, SilentlyContinue
Required: False
Position: Named
Default value: Depends on preference variable
Accept pipeline input: False
Accept wildcard characters: False
-
BreakWrite-Informationコマンドが発生した時点でデバッガーを入力します。 -
Stopは、Write-Informationコマンドの発生時にコマンドまたはスクリプトを停止します。 -
Ignoreは情報メッセージを抑制し、コマンドの実行を続行します。SilentlyContinueとは異なり、Ignoreは情報メッセージを完全に忘れてしまいます。情報メッセージは情報ストリームに追加されません。 -
Inquireは、Write-Informationコマンドで指定した情報メッセージを表示し、続行するかどうかを確認します。 -
Continueは情報メッセージを表示し、実行を続けます。 -
Suspendは PowerShell 6 以降ではサポートされていません。これはワークフローでのみ使用できます。 -
SilentlyContinue情報メッセージが表示されない (既定) の場合、スクリプトは中断されずに続行されるため、効果はありません。
注
InformationAction パラメーターはオーバーライドされますが、スクリプトまたは関数を実行するコマンドでパラメーターを使用する場合、$InformationAction基本設定変数の値は置き換えられません。
-情報変数
PowerShell 5.0 で導入されました。
InformationVariable共通パラメーターを使用すると、情報レコードはパラメーターで指定された変数に格納されます。 また、PowerShell コマンドレットは、 Information ストリームに情報レコードを書き込むことができます。
Write-Information コマンドレットを使用して、情報レコードを書き込むこともできます。
情報レコードは、既定でコンソールにメッセージとして表示されます。
InformationAction共通パラメーターを使用して、情報レコードの表示を制御できます。
$InformationPreference基本設定変数を使用して動作を変更することもできます。
$InformationPreferenceの詳細については、「about_Preference_Variables」を参照してください。
注
情報変数には、入れ子になった関数またはスクリプトへの呼び出しからの情報メッセージを含め、コマンドによって生成されるすべての情報メッセージが含まれます。
Type: String
Aliases: iv
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
既定では、新しい情報レコードは、変数に既に格納されている値を上書きします。 変数の内容にエラー メッセージを追加するには、変数名の前にプラス記号 (+) を付けます。
-アウトバッファ
パイプラインを介してオブジェクトが送信される前にバッファーに蓄積するオブジェクトの数を決定します。 このパラメーターを省略すると、オブジェクトは生成時に送信されます。
Type: Int32
Aliases: ob
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
このリソース管理パラメーターは、上級ユーザー向けに設計されています。 このパラメーターを使用すると、PowerShell は OutBuffer + 1のバッチで次のコマンドレットにデータを送信します。
次の例では、ForEach-Object コマンドレットを使用するプロセス ブロック間Write-Host表示します。 表示は、2 または OutBuffer + 1のバッチで代替されます。
1..4 | ForEach-Object {
Write-Host "$($_): First"; $_
} -OutBuffer 1 | ForEach-Object {
Write-Host "$($_): Second" }
1: First
2: First
1: Second
2: Second
3: First
4: First
3: Second
4: Second
-アウト変数
パイプラインに沿って出力を送信するだけでなく、指定した変数にコマンドからの出力オブジェクトを格納します。
Type: String
Aliases: ov
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
変数に出力を追加するには、既に格納されている出力を置き換える代わりに、変数名の前にプラス記号 (+) を入力します。
たとえば、次のコマンドは、 $out 変数を作成し、その中にプロセス オブジェクトを格納します。
Get-Process powershell -OutVariable out
次のコマンドは、プロセス オブジェクトを $out 変数に追加します。
Get-Process iexplore -OutVariable +out
次のコマンドは、 $out 変数の内容を表示します。
$out
注
OutVariable パラメーターによって作成される変数は[System.Collections.ArrayList]です。
-パイプライン変数
PipelineVariable では、このパラメーターを使用するコマンドによって、次のパイプライン セグメントに渡された最新の値にアクセスできます。 パイプライン内のすべてのコマンドは、名前付き PipelineVariableを使用して値にアクセスできます。 値は、次のパイプライン セグメントに渡されるときに変数に割り当てられます。 これにより、 PipelineVariable 特定の一時変数よりも使いやすくなり、複数の場所に割り当てる必要がある場合があります。
$_や$PSItemとは異なり、PipelineVariableを使用すると、パイプライン コマンドは、直前のコマンド以外のコマンドによって渡された (および保存された) パイプライン値にアクセスできます。 パイプライン コマンドは、パイプラインを通過する次の項目の処理中にパイプされた最後の値にアクセスできます。 これにより、コマンドはその出力を前のコマンド (またはそれ自体) に フィードバック できます。
注
高度な関数には、最大 3 つのスクリプト ブロック ( begin、 process、および end) を含めることができます。 高度な関数で PipelineVariable パラメーターを使用する場合、関数の実行時に最初に定義されたスクリプト ブロックの値のみが変数に割り当てられます。 詳細については、「 高度な関数」を参照してください。 PowerShell 7.2 では、この動作が修正されます。
Type: String
Aliases: pv
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
有効な値は文字列であり、変数名の場合と同じです。
注意事項
PipelineVariableのスコープは、呼び出されるパイプラインです。
同じ名前を使用するパイプラインの外部にある変数は、パイプラインが実行される前にクリアされます。 パイプラインが終了すると、 PipelineVariable はスコープ外になります。 パイプライン内の複数のコマンドが同じ PipelineVariable を指定する場合、共有変数は 1 つだけです。 その変数は、変数を指定するコマンドからの最新のパイプ出力で更新されます。
一部の ブロック コマンドでは、出力を生成する前にすべてのパイプライン項目 ( Sort-Object や Select-Object -Lastなど) が収集されます。 このようなブロッキング コマンドの前にコマンドで割り当てられた PipelineVariable には、ブロッキング コマンドの後のコマンドで使用される場合、前のコマンドの最後のパイプ項目が常に含まれます。
次の例は、 PipelineVariable のしくみを示しています。 この例では、5 つの数値が最初の ForEach-Object コマンドにパイプ処理されます。 パイプライン内の各項目は、 $Tempという名前のパイプライン変数に格納されます。
最初のForEach-Object コマンドのProcess ブロックは、パイプライン項目をダウンストリーム ForEach-Object コマンドにパイプ処理します。 各ステップで変数の状態が表示されます。
# Create a variable named $Temp
$Temp = 8
Get-Variable Temp | Format-Table
$InformationPreference = 'Continue'
Write-Information '-------------------------------------------------'
111,222,333,444,555 | ForEach-Object -PipelineVariable Temp -Begin {
# Note that the newly create $Temp variable doesn't contain the value 8
# assigned before the pipeline started and that $PSItem is empty in
# the Begin block.
Write-Information "Upstream (Begin): PSItem = '$PSItem', Temp = '$Temp'"
} -Process {
Write-Information "Upstream (Process): PSItem = '$PSItem', Temp = '$Temp'"
return $PSItem
} | ForEach-Object -Process {
Write-Information "`tDownstream: PSItem = '$PSItem', Temp = '$Temp'"
}
Write-Information '-------------------------------------------------'
# The $Temp variable is deleted when the pipeline finishes
Get-Variable Temp | Format-Table
Name Value
---- -----
Temp 8
-------------------------------------------------
Upstream (Begin): PSItem = '', Temp = ''
Upstream (Process): PSItem = '111', Temp = ''
Downstream: PSItem = '111', Temp = '111'
Upstream (Process): PSItem = '222', Temp = '111'
Downstream: PSItem = '222', Temp = '222'
Upstream (Process): PSItem = '333', Temp = '222'
Downstream: PSItem = '333', Temp = '333'
Upstream (Process): PSItem = '444', Temp = '333'
Downstream: PSItem = '444', Temp = '444'
Upstream (Process): PSItem = '555', Temp = '444'
Downstream: PSItem = '555', Temp = '555'
-------------------------------------------------
Name Value
---- -----
Temp
注意事項
CimCmdlets または CDXML コマンドレットを含む パイプラインで PipelineVariable パラメーターを使用する場合、2 つの既知の問題があります。 次の例では、 Get-Partition は CDXML 関数で、 Get-CimInstance は CimCmdlet です。
問題 1: CDXML 関数は、PipelineVariable パラメーターを使用できる[CmdletBinding()]を使用します。
Get-Partition -pv pvar
ただし、Windows PowerShell v5.1 で PipelineVariable を使用すると、次のエラーが表示されます。
Get-Partition : Cannot retrieve the dynamic parameters for the cmdlet.
Object reference not set to an instance of an object.
At line:1 char:1
+ get-partition -PipelineVariable pvar
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : InvalidArgument: (:) [Get-Partition], ParameterBindingException
+ FullyQualifiedErrorId : GetDynamicParametersException,Get-Partition
問題 2: 上記のコマンドが CDXML コマンド ではなく 、ダウンストリームにいずれかのコマンドの種類が含まれている場合、 PipelineVariable は最後に累積されたオブジェクトとして残ります。
Get-CimInstance Win32_DiskDrive -pv pvar |
ForEach-Object {
Write-Host "Upstream: Disk $($pvar.Index)"
return [pscustomobject]@{ DiskNumber = $_.Index }
} | Get-Partition | ForEach-Object {
Write-Host "Downstream: Disk $($pvar.Index)"
}
$pvarの値が、2 番目の ForEach-Object コマンドのパイプライン内の最後のオブジェクトに設定されていることに注意してください。
Upstream: Disk 1
Upstream: Disk 2
Upstream: Disk 0
Downstream: Disk 0
Downstream: Disk 0
Downstream: Disk 0
Downstream: Disk 0
Downstream: Disk 0
Downstream: Disk 0
-プログレスアクション
スクリプト、コマンドレット、またはプロバイダーによって生成された進行状況の更新 ( Write-Progress コマンドレットによって生成された進行状況バーなど) に対して PowerShell がどのように応答するかを決定します。
Write-Progress コマンドレットは、コマンドの状態を示す進行状況バーを作成します。
ProgressAction パラメーターは PowerShell 7.4 で追加されました。
ProgressAction パラメーターは、ActionPreference、SilentlyContinue、Stop、Continue、Inquire、Ignore、またはSuspendのいずれかのBreak列挙値を受け取ります。
有効な値は次のとおりです。
-
BreakWrite-Progressコマンドが発生した時点でデバッガーを入力します。 -
Stop: 進行状況バーは表示されません。 代わりに、エラー メッセージが表示され、実行が停止されます。 -
Inquire: 進行状況バーは表示されません。 続行するアクセス許可を求めるメッセージが表示されます。YまたはAで返信すると、進行状況バーが表示されます。 -
Continue: (既定値) 進行状況バーが表示され、実行が続行されます。 -
SilentlyContinue: コマンドを実行しますが、進行状況バーは表示されません。
Type: ActionPreference
Aliases: proga
Accepted values: Break, Suspend, Ignore, Inquire, Continue, Stop, SilentlyContinue
Required: False
Position: Named
Default value: Depends on preference variable
Accept pipeline input: False
Accept wildcard characters: False
-Verbose
コマンドによって実行された操作に関する詳細情報を表示します。 この情報は、トレースまたはトランザクション ログ内の情報に似ています。 このパラメーターは、コマンドが詳細メッセージを生成する場合にのみ機能します。 たとえば、このパラメーターは、コマンドに Write-Verbose コマンドレットが含まれている場合に機能します。
Type: SwitchParameter
Aliases: vb
Required: False
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: False
Verbose パラメーターは、現在のコマンドの$VerbosePreference変数の値をオーバーライドします。
$VerbosePreference変数の既定値はSilentlyContinueであるため、既定では詳細メッセージは表示されません。
-
-Verbose:$trueと同じ効果があります。-Verbose -
-Verbose:$falseは、詳しいメッセージの表示を抑制します。 このパラメーターは、$VerbosePreferenceの値がSilentlyContinueされていない場合に使用します (既定値)。
-警告アクション
コマンドレットがコマンドからの警告に応答する方法を決定します。
Continue が既定値です。 このパラメーターは、コマンドによって警告メッセージが生成された場合にのみ機能します。 たとえば、このパラメーターは、コマンドに Write-Warning コマンドレットが含まれている場合に機能します。
Type: ActionPreference
Aliases: wa
Accepted values: Break, Suspend, Ignore, Inquire, Continue, Stop, SilentlyContinue
Required: False
Position: Named
Default value: Depends on preference variable
Accept pipeline input: False
Accept wildcard characters: False
WarningAction パラメーターは、現在のコマンドの$WarningPreference変数の値をオーバーライドします。
$WarningPreference変数の既定値はContinueされているため、WarningAction パラメーターを使用しない限り、警告が表示され、実行が続行されます。
-
Breakは、警告が発生したときにデバッガーに入ります。 -
Continueは警告メッセージを表示し、コマンドの実行を続行します。Continueは既定値です。 -
Inquireは警告メッセージを表示し、実行を続行する前に確認を求められます。 この値はほとんど使用しません。 -
SilentlyContinueは警告メッセージを抑制し、コマンドの実行を続行します。 -
Stopは警告メッセージを表示し、コマンドの実行を停止します。
注
WarningAction パラメーターはオーバーライドされますが、スクリプトまたは関数を実行するコマンドでパラメーターを使用する場合、$WarningAction基本設定変数の値は置き換えられません。
-警告変数
指定した変数にコマンドに関する警告レコードを格納します。
Type: String
Aliases: wv
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
生成されたすべての警告は、警告がユーザーに表示されない場合でも、変数に保存されます。
変数コンテンツに警告を追加するには、既に保存されている可能性がある警告を置き換える代わりに、変数名の前にプラス記号 (+) を入力します。
たとえば、次のコマンドは、 $a 変数を作成し、その変数に警告を格納します。
Get-Process -Id 6 -WarningVariable a
次のコマンドは、 $a 変数に警告を追加します。
Get-Process -Id 2 -WarningVariable +a
次のコマンドは、 $aの内容を表示します。
$a
このパラメーターを使用すると、特定のコマンドからの警告のみを含む変数を作成できます。
$a[0]や$warning[1,2]などの配列表記を使用して、変数に格納されている特定の警告を参照できます。
注
警告変数には、入れ子になった関数またはスクリプトへの呼び出しからの警告を含め、コマンドによって生成されたすべての警告が含まれます。
リスク管理パラメーター
-WhatIf
コマンドを実行する代わりに、コマンドの効果を説明するメッセージを表示します。
Type: SwitchParameter
Aliases: wi
Required: False
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: False
WhatIf パラメーターは、現在のコマンドの$WhatIfPreference変数の値をオーバーライドします。
$WhatIfPreference変数の既定値は 0 (無効) であるため、WhatIf動作は WhatIf パラメーターなしでは実行されません。 詳細については、「about_Preference_Variables」 を参照してください。
-
$trueは、-WhatIfと同じ効果を持ちます。 -
$falseでは、$WhatIfPreference変数の値が 1 の場合に発生する WhatIf の自動動作が抑制されます。
たとえば、次のコマンドでは、-WhatIf コマンドで Remove-Item パラメーターを使用します。
Remove-Item Date.csv -WhatIf
PowerShell では、アイテムを削除する代わりに、実行する操作と影響を受けるアイテムが一覧表示されます。 このコマンドでは次の出力が生成されます。
What if: Performing operation "Remove File" on
Target "C:\ps-test\date.csv".
-Confirm
コマンドを実行する前に確認メッセージを表示します。
Type: SwitchParameter
Aliases: cf
Required: False
Position: Named
Default value: Depends on preference variable
Accept pipeline input: False
Accept wildcard characters: False
Confirm パラメーターは、現在のコマンドの$ConfirmPreference変数の値をオーバーライドします。 既定値は true です。 詳細については、「about_Preference_Variables」 を参照してください。
-
$trueは、-Confirmと同じ効果を持ちます。 -
$falseは、$ConfirmPreferenceの値がコマンドレットの推定リスク以下である場合に発生する自動確認を抑制します。
たとえば、次のコマンドでは、Confirm コマンドで Remove-Item パラメーターを使用します。 アイテムを削除する前に、PowerShell によって実行される操作と影響を受けるアイテムが一覧表示され、承認を求められます。
PS C:\ps-test> Remove-Item tmp*.txt -Confirm
Confirm
Are you sure you want to perform this action?
Performing operation "Remove File" on Target " C:\ps-test\tmp1.txt
[Y] Yes [A] Yes to All [N] No [L] No to All [S] Suspend
[?] Help (default is "Y"):
Confirm応答オプションは次のとおりです。
| 回答 | 結果 |
|---|---|
Yes (Y) |
アクションを実行します。 |
Yes to All (A) |
すべてのアクションを実行し、後続のアクションを抑制する Confirm |
| このコマンドのクエリ。 | |
No (N): |
アクションを実行しないでください。 |
No to All (L): |
アクションを実行せず、後続の操作を抑制する |
| Confirm このコマンドのクエリ。 | |
Suspend (S): |
コマンドを一時停止し、一時的なセッションを作成します。 |
Help (?) |
これらのオプションのヘルプを表示します。 |
Suspend オプションは、コマンドを保留にし、Confirm オプションを選択する準備ができるまで作業できる一時的な入れ子になったセッションを作成します。
入れ子になったセッションのコマンド プロンプトには、元の親コマンドの子操作であることを示す追加のキャレット (>>) が 2 つあります。 入れ子になったセッションでコマンドとスクリプトを実行できます。 入れ子になったセッションを終了し、元のコマンドの Confirm オプションに戻すには、「exit」と入力します。
次の例では、 Suspend オプション (S) を使用して、ユーザーがコマンド パラメーターのヘルプを確認している間、コマンドを一時的に停止します。 必要な情報を取得した後、ユーザーは"exit" を入力して入れ子になったプロンプトを終了し、 Confirm クエリに対する Yes (y) 応答を選択します。
PS C:\ps-test> New-Item -ItemType File -Name Test.txt -Confirm
Confirm
Are you sure you want to perform this action?
Performing operation "Create File" on Target "Destination:
C:\ps-test\test.txt".
[Y] Yes [A] Yes to All [N] No [L] No to All [S] Suspend [?] Help (default
is "Y"): s
PS C:\ps-test> Get-Help New-Item -Parameter ItemType
-ItemType <string>
Specifies the provider-specified type of the new item.
Required? false
Position? named
Default value
Accept pipeline input? true (ByPropertyName)
Accept wildcard characters? false
PS C:\ps-test> exit
Confirm
Are you sure you want to perform this action?
Performing operation "Create File" on Target "Destination: C:\ps-test\test
.txt".
[Y] Yes [A] Yes to All [N] No [L] No to All [S] Suspend [?] Help (defau
lt is "Y"): y
Directory: C:\ps-test
Mode LastWriteTime Length Name
---- ------------- ------ ----
-a--- 8/27/2010 2:41 PM 0 test.txt
こちらも参照ください
PowerShell