다음을 통해 공유


about_CommonParameters

간단한 설명

모든 cmdlet과 함께 사용할 수 있는 매개 변수에 대해 설명합니다.

자세한 설명

일반적인 매개 변수는 모든 cmdlet과 함께 사용할 수 있는 cmdlet 매개 변수 집합입니다. cmdlet 개발자가 아닌 PowerShell에서 구현하며 모든 cmdlet에서 자동으로 사용할 수 있습니다.

모든 cmdlet에서 공통 매개 변수를 사용할 수 있지만 모든 cmdlet에 영향을 주지 않을 수 있습니다. 예를 들어 cmdlet이 출력을 생성 verbose 하지 않는 경우 공통 매개 변수를 Verbose 사용하면 아무런 효과가 없습니다.

공통 매개 변수는 특성 또는 Parameter 특성을 사용하는 CmdletBinding 고급 함수에서도 사용할 수 있습니다. 이러한 특성을 사용하면 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)

작업 매개 변수는 ActionPreference 형식 값입니다. ActionPreference 는 다음 값을 가진 열거형입니다.

속성
Suspend 5
Ignore 4
Inquire 3
Continue 2
Stop 1
SilentlyContinue 0

매개 변수와 함께 이름 또는 값을 사용할 수 있습니다.

일반적인 매개 변수 외에도 많은 cmdlet은 위험 완화 매개 변수를 제공합니다. 시스템 또는 사용자 데이터에 대한 위험을 수반하는 Cmdlet은 일반적으로 이러한 매개 변수를 제공합니다.

위험 완화 매개 변수는 다음과 같습니다.

  • WhatIf (wi)
  • Confirm (cf)

일반적인 매개 변수 설명

-Debug

명령에 의해 수행된 작업에 대한 프로그래머 수준 세부 정보를 표시합니다. 이 매개 변수는 명령이 디버깅 메시지를 생성하는 경우에만 작동합니다. 예를 들어 명령이 cmdlet을 포함하는 경우 이 매개 변수가 Write-Debug 작동합니다.

Type: SwitchParameter
Aliases: db
Required: False
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: False

기본적으로 변수 값이 SilentlyContinue이므로 디버깅 메시지가 표시되지 $DebugPreference 않습니다.

대화형 모드에서 매개 변수는 Debug 현재 명령에 대한 변수 값을 재정의 $DebugPreference $DebugPreference 하고 값을 Inquire설정합니다.

비대화형 모드에서 매개 변수는 Debug 현재 명령에 대한 변수 값을 재정의 $DebugPreference $DebugPreference 하고 값을 Continue설정합니다.

-Debug:$true 와 같은 효과가 -Debug있습니다. 기본값인 SilentlyContinue가 아닌 경우 $DebugPreference 디버깅 메시지의 표시를 표시하지 않는 데 사용합니다-Debug:$false.

-ErrorAction

명령에서 종료하지 않는 오류에 cmdlet이 응답하는 방법을 결정합니다. 이 매개 변수는 명령이 cmdlet의 오류와 같이 Write-Error 종료하지 않는 오류를 생성하는 경우에만 작동합니다.

Type: ActionPreference
Aliases: ea
Accepted values: 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 매개 변수는 명령이 성공적으로 완료되지 않도록 하는 종료 오류(예: 데이터 누락, 유효하지 않은 매개 변수 또는 권한 부족)에 영향을 주지 않습니다.

  • -ErrorAction:Break 오류가 발생하거나 예외가 발생할 때 디버거를 입력합니다.
  • -ErrorAction:Continue 는 오류 메시지를 표시하고 명령을 계속 실행합니다. 기본값은 Continue입니다.
  • -ErrorAction:Ignore 오류 메시지를 표시하지 않고 명령을 계속 실행합니다. SilentlyContinue와 달리 Ignore는 자동 변수에 $Error 오류 메시지를 추가하지 않습니다. 무시 값은 PowerShell 3.0에 도입되었습니다.
  • -ErrorAction:Inquire 은 오류 메시지를 표시하고 실행을 계속하기 전에 확인 메시지를 표시합니다. 이 값은 거의 사용되지 않습니다.
  • -ErrorAction:SilentlyContinue 오류 메시지를 표시하지 않고 명령을 계속 실행합니다.
  • -ErrorAction:Stop 는 오류 메시지를 표시하고 명령 실행을 중지합니다.
  • -ErrorAction:Suspend 는 PowerShell 6 이상에서 지원되지 않는 워크플로에만 사용할 수 있습니다.

참고 항목

ErrorAction 매개 변수는 재정의 $ErrorActionPreference 하지만 매개 변수를 명령에서 사용하여 스크립트 또는 함수를 실행할 때 변수 값을 대체하지는 않습니다.

-ErrorVariable

오류 레코드는 자동 변수에 $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 공통 매개 변수는 기본적으로 SilentlyContinue설정된 기본 설정 변수의 값을 재정의 $InformationPreference 합니다. InformationAction이 있는 스크립트에서 사용하는 Write-Information 경우 InformationAction Write-Information매개 변수의 값에 따라 값이 표시됩니다. 자세한 $InformationPreference내용은 about_Preference_Variables 참조하세요.

Type: ActionPreference
Aliases: infa
Accepted values: Suspend, Ignore, Inquire, Continue, Stop, SilentlyContinue

Required: False
Position: Named
Default value: Depends on preference variable
Accept pipeline input: False
Accept wildcard characters: False
  • -InformationAction:Break 명령이 발생할 때 디버거를 입력합니다 Write-Information .
  • -InformationAction:Stop 는 명령이 발생할 때 명령 또는 스크립트를 중지합니다 Write-Information .
  • -InformationAction:Ignore 는 정보 메시지를 표시하지 않으며 명령을 계속 실행합니다. SilentlyContinue와 달리 Ignore는 정보 메시지를 완전히 잊어버리고 정보 스트림에 정보 메시지를 추가하지 않습니다.
  • -InformationAction:Inquire 는 명령에 지정 Write-Information 한 정보 메시지를 표시한 다음 계속할지 여부를 묻습니다.
  • -InformationAction:Continue 는 정보 메시지를 표시하고 실행을 계속합니다.
  • -InformationAction:Suspend 는 워크플로에만 사용할 수 있으므로 PowerShell 6 이상에서는 지원되지 않습니다.
  • -InformationAction:SilentlyContinue 정보 메시지(기본값)가 표시되지 않고 스크립트가 중단 없이 계속되기 때문에 효과가 없습니다.

참고 항목

InformationAction 매개 변수는 재정의하지만 스크립트 또는 함수를 실행하기 위해 명령에서 매개 변수를 사용할 때 기본 설정 변수의 $InformationAction 값을 대체하지는 않습니다.

-InformationVariable

PowerShell 5.0에 도입되었습니다. InformationVariable 공통 매개 변수를 사용하는 경우 정보 레코드는 매개 변수로 지정된 변수에 저장됩니다. 또한 PowerShell cmdlet은 정보 스트림에 정보 레코드를 쓸 수 있습니다. cmdlet을 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

기본적으로 새 정보 레코드는 변수에 이미 저장된 값을 덮어씁 수 있습니다. 변수 내용에 오류 메시지를 추가하려면 변수 이름 앞에 더하기 기호(+)를 추가합니다.

-OutBuffer

파이프라인을 통해 개체를 보내기 전에 버퍼에 누적할 개체 수를 결정합니다. 이 매개 변수를 생략하면 개체가 생성될 때 전송됩니다.

Type: Int32
Aliases: ob
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False

이 리소스 관리 매개 변수는 고급 사용자를 위해 설계되었습니다. 이 매개 변수를 사용하는 경우 PowerShell은 다음 cmdlet에 데이터를 일괄 처리로 보냅니다 OutBuffer + 1.

다음 예제에서는 cmdlet을 사용하는 Write-Host 프로세스 블록 간에 ForEach-Object 대체를 표시합니다. 표시는 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

-OutVariable

파이프라인을 따라 출력을 보내는 것 외에도 명령의 출력 개체를 지정된 변수에 저장합니다.

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을 사용하여 값에 액세스할 수 있습니다. 값은 다음 파이프라인 세그먼트로 전달될 때 변수에 할당됩니다. 이렇게 하면 PipelineVariable여러 위치에 할당해야 할 수 있는 특정 임시 변수보다 쉽게 사용할 수 있습니다.

PipelineVariable과 $PSItem달리 $_ PipelineVariable사용하면 파이프라인 명령이 바로 앞의 명령이 아닌 다른 명령으로 전달되고 저장된 파이프라인 값에 액세스할 수 있습니다. 파이프라인 명령은 파이프라인을 통과하는 다음 항목을 처리하는 동안 파이프된 마지막 값에 액세스할 수 있습니다. 이렇게 하면 명령이 출력을 이전 명령(또는 그 자체)으로 다시 공급할 수 있습니다.

참고 항목

고급 함수에는 최대 3개의 스크립트 블록 begin( , processend.)이 있을 수 있습니다. 고급 함수와 함께 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 을 지정하는 경우 하나의 공유 변수만 있습니다. 해당 변수는 변수를 지정하는 명령의 최신 파이프 출력으로 업데이트됩니다.

일부 차단 명령은 출력을 생성하기 전에 모든 파이프라인 항목을 수집합니다(예: Select-Object -Last>Sort-Object). 이러한 차단 명령 전에 명령에 할당된 PipelineVariable 은 차단 명령 이후 명령에서 사용될 때 항상 이전 명령의 최종 파이프 항목을 포함합니다.

다음은 PipelineVariable 작동 방식의 예입니다. 이 예제 에서는 PipelineVariable 매개 변수가 명령에 추가 Foreach-Object 되어 명령 결과를 변수에 저장합니다. 숫자 범위(1~5)는 첫 번째 Foreach-Object 명령에 파이프되며, 그 결과는 이름이 지정된 $temp변수에 저장됩니다.

첫 번째 Foreach-Object 명령의 결과는 두 번째 Foreach-Object 명령으로 파이프되어 현재 값 $temp$_.

# Create a variable named $temp
$temp=8
Get-Variable temp
# Note that the variable just created isn't available on the
# pipeline when -PipelineVariable creates the same variable name
1..5 | ForEach-Object -PipelineVariable temp -Begin {
    Write-Host "Step1[BEGIN]:`$temp=$temp"
} -Process {
  Write-Host "Step1[PROCESS]:`$temp=$temp - `$_=$_"
  Write-Output $_
} | ForEach-Object {
  Write-Host "`tStep2[PROCESS]:`$temp=$temp - `$_=$_"
}
# The $temp variable is deleted when the pipeline finishes
Get-Variable temp
Name                           Value
----                           -----
temp                           8

Step1[BEGIN]:$temp=
Step1[PROCESS]:$temp= - $_=1
        Step2[PROCESS]:$temp=1 - $_=1
Step1[PROCESS]:$temp=1 - $_=2
        Step2[PROCESS]:$temp=2 - $_=2
Step1[PROCESS]:$temp=2 - $_=3
        Step2[PROCESS]:$temp=3 - $_=3
Step1[PROCESS]:$temp=3 - $_=4
        Step2[PROCESS]:$temp=4 - $_=4
Step1[PROCESS]:$temp=4 - $_=5
        Step2[PROCESS]:$temp=5 - $_=5

Get-Variable : Cannot find a variable with the name 'temp'.
At line:1 char:1
+ Get-Variable temp
+ ~~~~~~~~~~~~~~~~~
    + CategoryInfo          : ObjectNotFound: (temp:String) [Get-Variable], ItemNotFoundException
    + FullyQualifiedErrorId : VariableNotFound,Microsoft.PowerShell.Commands.GetVariableCommand

-ProgressAction

Write-Progress cmdlet에서 생성된 진행률 표시줄과 같이 스크립트, cmdlet 또는 공급자가 생성한 진행률 업데이트에 PowerShell이 응답하는 방법을 결정합니다. cmdlet은 Write-Progress 명령의 상태를 표시하는 진행률 표시줄을 만듭니다. ProgressAction 매개 변수가 PowerShell 7.4에 추가되었습니다.

ProgressAction 매개 변수는 열거형 값 ContinueSuspendBreakStopIgnoreSilentlyContinueInquireActionPreference 하나를 사용합니다.

유효한 값은 다음과 같습니다.

  • Break 명령이 발생할 때 디버거를 입력합니다 Write-Progress .
  • Stop: 진행률 표시줄을 표시하지 않습니다. 대신 오류 메시지를 표시하고 실행을 중지합니다.
  • Inquire: 진행률 표시줄을 표시하지 않습니다. 계속할 수 있는 권한을 묻는 메시지가 표시됩니다. 회신하거나 AY 신하면 진행률 표시줄이 표시됩니다.
  • 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

명령에 의해 수행된 작업에 대한 자세한 정보를 표시합니다. 이 정보는 추적 또는 트랜잭션 로그의 정보와 유사합니다. 이 매개 변수는 명령이 메시지를 생성하는 경우에만 작동합니다 verbose . 예를 들어 명령이 cmdlet을 포함하는 경우 이 매개 변수가 Write-Verbose 작동합니다.

Type: SwitchParameter
Aliases: vb
Required: False
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: False

매개 변수는 Verbose 현재 명령에 대한 변수 값을 재정의 $VerbosePreference 합니다. 변수의 $VerbosePreference 기본값은 SilentlyContinueverbose이므로 메시지는 기본적으로 표시되지 않습니다.

  • -Verbose:$true 와 같은 효과가 있습니다. -Verbose
  • -Verbose:$false 는 메시지 표시를 표시하지 않습니다 verbose . 값 $VerbosePreference 이 SilentlyContinue(기본값)가 아닌 경우 이 매개 변수를 사용합니다.

-WarningAction

cmdlet이 명령의 경고에 응답하는 방법을 결정합니다. Continue 가 기본값입니다. 이 매개 변수는 명령이 경고 메시지를 생성하는 경우에만 작동합니다. 예를 들어 명령이 cmdlet을 포함하는 경우 이 매개 변수가 Write-Warning 작동합니다.

Type: ActionPreference
Aliases: wa
Accepted values: 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 매개 변수를 사용하지 않는 한 경고가 표시되고 실행이 계속됩니다.

  • -WarningAction:Break 경고가 발생하면 디버거를 입력합니다.
  • -WarningAction:Continue 는 경고 메시지를 표시하고 명령을 계속 실행합니다. 기본값은 Continue입니다.
  • -WarningAction:Inquire 는 경고 메시지를 표시하고 실행을 계속하기 전에 확인 메시지를 표시합니다. 이 값은 거의 사용되지 않습니다.
  • -WarningAction:SilentlyContinue 는 경고 메시지를 표시하지 않고 명령을 계속 실행합니다.
  • -WarningAction:Stop 는 경고 메시지를 표시하고 명령 실행을 중지합니다.

참고 항목

WarningAction 매개 변수는 재정의하지만 매개 변수를 명령에서 사용하여 스크립트 또는 함수를 실행할 때 기본 설정 변수의 $WarningAction 값을 대체하지는 않습니다.

-WarningVariable

지정된 변수에 명령에 대한 경고 레코드를 저장합니다.

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 참조하세요.

  • -WhatIf:$true 와 같은 효과가 -WhatIf있습니다.
  • -WhatIf:$false 는 변수 값이 1일 때 발생하는 자동 WhatIf 동작을 $WhatIfPreference 표시하지 않습니다.

예를 들어 다음 명령은 명령의 -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 참조하세요.

  • -Confirm:$true 와 같은 효과가 -Confirm있습니다.
  • -Confirm:$false 값이 cmdlet의 $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 준비가 될 때까지 작업할 수 있는 임시 중첩 세션을 만듭니다. 중첩된 세션에 대한 명령 프롬프트에는 원래 부모 명령의 자식 작업임을 나타내는 두 개의 추가 캐럿(>>)이 있습니다. 중첩된 세션에서 명령 및 스크립트를 실행할 수 있습니다. 중첩된 세션을 종료하고 원래 명령에 대한 옵션으로 돌아가 Confirm 려면 "exit"를 입력합니다.

다음 예제 에서는 사용자가 명령 매개 변수에 대한 도움말을 확인하는 동안 일시 중단 옵션(S)을 사용하여 명령을 일시적으로 중지합니다. 필요한 정보를 얻은 후 사용자는 중첩된 프롬프트를 종료하기 위해 "exit"를 입력한 다음 쿼리에 대한 예(y) 응답을 Confirm 선택합니다.

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

참고 항목