간단한 설명
모든 cmdlet과 함께 사용할 수 있는 매개 변수에 대해 설명합니다.
자세한 설명
일반적인 매개 변수는 모든 cmdlet과 함께 사용할 수 있는 cmdlet 매개 변수 집합입니다. cmdlet 개발자가 아닌 PowerShell에서 구현하며 모든 cmdlet에서 자동으로 사용할 수 있습니다.
모든 cmdlet에서 공통 매개 변수를 사용할 수 있지만 모든 cmdlet에 영향을 주지 않을 수 있습니다. 예를 들어 cmdlet이 자세한 정보 출력을 생성하지 않는 경우 Verbose 일반 매개 변수를 사용해도 아무런 효과가 없습니다.
공통 매개 변수는 CmdletBinding 특성 또는 Parameter 특성을 사용하는 고급 함수와 모든 워크플로에서도 사용할 수 있습니다.
몇 가지 일반적인 매개 변수는 PowerShell 기본 설정 변수를 사용하여 설정한 시스템 기본값 또는 기본 설정을 재정의합니다. 기본 설정 변수와 달리 공통 매개 변수는 사용되는 명령에만 영향을 줍니다.
일반적인 매개 변수 외에도 많은 cmdlet은 WhatIf 및 Confirm 위험 완화 매개 변수를 제공합니다. 시스템 또는 사용자 데이터에 대한 위험을 수반하는 Cmdlet은 일반적으로 이러한 매개 변수를 제공합니다.
다음 목록에는 일반적인 매개 변수가 표시됩니다. 별칭은 괄호 안에 나열됩니다.
- 디버그(db)
- 오류 작업 (ea)
- ErrorVariable (ev)
- InformationAction (인파)
- InformationVariable (iv)
- OutVariable (ov)
- 아웃 버퍼 (ob)
- 파이프라인 변수 (pv)
- 자세한 정보 표시 (vb)
- 경고행동 (wa)
- 경고 변수 (wv)
위험 완화 매개 변수는 다음과 같습니다.
- 왓프(위 스콘신)
- 확인 (cf)
자세한 내용은 about_Preference_Variables참조하세요.
공통 매개변수 설명
디버그
Debug의 별칭은 db입니다.
명령에 의해 수행된 작업에 대한 프로그래머 수준 세부 정보를 표시합니다. 이 매개 변수는 명령이 디버깅 메시지를 생성하는 경우에만 작동합니다. 예를 들어 명령이 cmdlet을 포함하는 경우 이 매개 변수가 Write-Debug 작동합니다.
Debug 매개 변수는 현재 명령의 변수 값을 $DebugPreference 재정의하여 of 값을 $DebugPreferenceContinue로 설정합니다. 변수의 기본값은 $DebugPreferenceSilentlyContinue이므로 디버깅 메시지는 기본적으로 표시되지 않습니다.
-Debug:$true 와 같은 효과가 -Debug있습니다. 기본값인 SilentlyContinue-Debug:$false데 사용합니다$DebugPreference.
에러액션
ErrorAction의 별칭은 ea입니다.
명령에서 종료하지 않는 오류에 cmdlet이 응답하는 방법을 결정합니다.
이 매개 변수는 명령이 cmdlet의 오류와 같이 Write-Error 종료하지 않는 오류를 생성하는 경우에만 작동합니다.
ErrorAction 매개 변수는 현재 명령에 대한 변수 값을 재정의 $ErrorActionPreference 합니다. 변수의 $ErrorActionPreference 기본값은 Continue이므로 ErrorAction 매개 변수를 사용하지 않는 한 오류 메시지가 표시되고 실행이 계속됩니다.
ErrorAction 매개 변수는 명령이 성공적으로 완료되지 않도록 하는 종료 오류(예: 데이터 누락, 유효하지 않은 매개 변수 또는 권한 부족)에 영향을 주지 않습니다.
-ErrorAction:Continue 오류 메시지를 표시하고 명령을 계속 실행합니다.
Continue 기본값입니다.
-ErrorAction:Ignore 오류 메시지를 표시하지 않고 명령을 계속 실행합니다.
SilentlyContinue와 달리 Ignore는 자동 변수에 $Error 오류 메시지를 추가하지 않습니다.
무시 값은 PowerShell 3.0에 도입되었습니다.
-ErrorAction:Inquire 은 오류 메시지를 표시하고 실행을 계속하기 전에 확인 메시지를 표시합니다. 이 값은 거의 사용되지 않습니다.
-ErrorAction:SilentlyContinue 오류 메시지를 표시하지 않고 명령을 계속 실행합니다.
-ErrorAction:Stop 는 오류 메시지를 표시하고 명령 실행을 중지합니다.
-ErrorAction:Suspend 워크플로에만 사용할 수 있으므로 PowerShell Core에서 지원되지 않습니다.
비고
ErrorAction 매개 변수는 매개 변수가 스크립트 또는 함수를 실행하는 명령에 사용되는 경우 preference 변수의 값을 $ErrorAction 재정의하지만 바꾸지는 않습니다.
오류 변수
ErrorVariable의 별칭은 ev입니다.
ErrorVariable 은 명령에 대한 오류 메시지를 지정된 변수와 $Error 자동 변수에 저장합니다. 자세한 내용을 보려면 다음 명령을 입력하십시오.
Get-Help about_Automatic_Variables
기본적으로 새 오류 메시지는 변수에 이미 저장된 오류 메시지를 덮어씁 수 있습니다. 변수 내용에 오류 메시지를 추가하려면 변수 이름 앞에 더하기 기호(+)를 입력합니다.
예를 들어 다음 명령은 변수를 $a 만든 다음, 변수에 오류를 저장합니다.
Get-Process -Id 6 -ErrorVariable a
다음 명령은 변수에 $a 오류 메시지를 추가합니다.
Get-Process -Id 2 -ErrorVariable +a
다음 명령은 다음의 $a내용을 표시합니다.
$a
이 매개 변수를 사용하여 특정 명령의 오류 메시지만 포함하는 변수를 만들 수 있습니다. 자동 변수는 $Error 세션의 모든 명령에서 오류 메시지를 포함합니다. 변수에 저장된 특정 오류와 같은 $a[0] 배열 표기법을 사용하거나 $error[1,2] 참조할 수 있습니다.
정보작업
InformationAction의 별칭은 ia입니다.
PowerShell 5.0에 도입되었습니다. 사용되는 명령 또는 스크립트 내에서 InformationAction$InformationPreference 합니다.
Write-Information이 있는 스크립트에서 사용하는 경우 Write-Information 매개 변수의 값에 따라 값이 표시됩니다.
$InformationPreference에 대한 추가 정보는 의 about_Preference_Variables를 참조하세요.
-InformationAction:Stop 는 명령이 발생할 때 명령 또는 스크립트를 중지합니다 Write-Information .
-InformationAction:Ignore 는 정보 메시지를 표시하지 않으며 명령을 계속 실행합니다.
SilentlyContinue와 달리 무시는 정보 메시지를 완전히 잊어버립니다. 정보 스트림에 정보 메시지를 추가하지 않습니다.
-InformationAction:Inquire 는 명령에 지정 Write-Information 한 정보 메시지를 표시한 다음 계속할지 여부를 묻습니다.
-InformationAction:Continue 는 정보 메시지를 표시하고 실행을 계속합니다.
-InformationAction:Suspend 워크플로에만 사용할 수 있으므로 PowerShell Core에서 지원되지 않습니다.
-InformationAction:SilentlyContinue 정보 메시지(기본값)가 표시되지 않고 스크립트가 중단 없이 계속되기 때문에 효과가 없습니다.
비고
InformationAction 매개 변수는 매개 변수가 스크립트 또는 함수를 실행하는 명령에 사용될 때 preference 변수의 값을 $InformationAction 재정의하지만 바꾸지는 않습니다.
정보변수
InformationVariable의 별칭은 iv입니다.
PowerShell 5.0에 도입되었습니다. 사용되는 명령 또는 스크립트 내에서 InformationVariable 공통 매개 변수는 명령을 추가하여 Write-Information 지정한 문자열을 변수에 저장합니다.
Write-Information
값은 InformationAction 공통 매개변수의 값에 따라 표시됩니다. InformationAction 공통 매개 변수를 Write-Information 추가하지 않으면 preference 변수의 값에 따라 문자열이 $InformationPreference 표시됩니다.
$InformationPreference에 대한 추가 정보는 의 about_Preference_Variables를 참조하세요.
아웃버퍼
OutBuffer의 별칭은 ob이며 System.Int32 값을 사용합니다.
파이프라인을 통해 개체를 보내기 전에 버퍼에 누적할 개체 수를 결정합니다. 이 매개 변수를 생략하면 개체가 생성될 때 전송됩니다.
이 리소스 관리 매개 변수는 고급 사용자를 위해 설계되었습니다. 이 매개 변수를 사용하는 경우 PowerShell은 다음 cmdlet에 데이터를 일괄 처리로 보냅니다 OutBuffer + 1.
다음 예제에서는 cmdlet을 사용하는 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
출력 변수
OutVariable의 별칭은 ov입니다.
파이프라인을 따라 출력을 보내는 것 외에도 명령의 출력 개체를 지정된 변수에 저장합니다.
변수에 출력을 추가하려면 이미 저장되어 있을 수 있는 출력을 바꾸는 대신 변수 이름 앞에 더하기 기호(+)를 입력합니다.
예를 들어 다음 명령은 변수를 $out 만들고 프로세스 개체를 저장합니다.
Get-Process PowerShell -OutVariable out
다음 명령은 프로세스 개체를 변수에 $out 추가합니다.
Get-Process iexplore -OutVariable +out
다음 명령은 변수의 $out 내용을 표시합니다.
$out
비고
OutVariable 매개 변수에서 만든 변수는 .입니다[System.Collections.ArrayList].
파이프라인 변수
PipelineVariable의 별칭은 pv이며 문자열 값을 사용합니다.
PipelineVariable 은 파이프라인을 통해 흐를 때 명명된 명령에 대해 현재 파이프라인 요소의 값을 변수로 저장합니다.
유효한 값은 모든 변수 이름과 동일한 문자열입니다.
다음은 PipelineVariable 작동 방식의 예입니다. 이 예제에서는 PipelineVariable 매개 변수가 명령에 추가 Foreach-Object 되어 명령 결과를 변수에 저장합니다. 1에서 10까지의 숫자 범위가 첫 번째 Foreach-Object 명령으로 파이프되며, 그 결과는 Left라는 변수에 저장됩니다.
첫 번째 Foreach-Object 명령의 결과는 첫 번째 Foreach-Object 명령에서 반환된 개체를 필터링하는 두 번째 Foreach-Object 명령으로 파이프됩니다. 두 번째 명령의 결과는 Right라는 변수에 저장됩니다.
세 번째 Foreach-Object 명령에서 Foreach-Object 및 Right로 표시되는 처음 두 파이프 명령의 결과는 곱하기 연산자를 사용하여 처리됩니다. 이 명령은 Left 및 Right 변수에 저장된 개체에 곱하도록 지시하고 결과를 "Left range member * Right range member = product"로 표시하도록 지정합니다.
1..10 | Foreach-Object -PipelineVariable Left -Process { $_ } |
Foreach-Object -PV Right -Process { 1..10 } |
Foreach-Object -Process { "$Left * $Right = " + ($Left*$Right) }
1 * 1 = 1
1 * 2 = 2
1 * 3 = 3
1 * 4 = 4
1 * 5 = 5
...
장황한
Verbose의 별칭은 vb입니다.
명령에 의해 수행된 작업에 대한 자세한 정보를 표시합니다. 이 정보는 추적 또는 트랜잭션 로그의 정보와 유사합니다. 이 매개 변수는 명령이 자세한 메시지를 생성하는 경우에만 작동합니다. 예를 들어 명령이 cmdlet을 포함하는 경우 이 매개 변수가 Write-Verbose 작동합니다.
Verbose 매개 변수는 현재 명령에 대한 변수 값을 재정의 $VerbosePreference 합니다.
$VerbosePreference 변수의 기본값은 SilentlyContinue있으므로 자세한 내용은 기본적으로 표시되지 않습니다.
-Verbose:$true 와 같은 효과가 있습니다. -Verbose
-Verbose:$false 자세한 메시지 표시를 억제합니다. 값 $VerbosePreference 이 SilentlyContinue (기본값)가 아닌 경우 이 매개 변수를 사용합니다.
경고작업
WarningAction의 별칭은 wa입니다.
cmdlet이 명령의 경고에 응답하는 방법을 결정합니다.
Continue 가 기본값입니다. 이 매개 변수는 명령이 경고 메시지를 생성하는 경우에만 작동합니다. 예를 들어 명령이 cmdlet을 포함하는 경우 이 매개 변수가 Write-Warning 작동합니다.
WarningAction 매개 변수는 현재 명령에 대한 변수 값을 재정의 $WarningPreference 합니다. 변수의 $WarningPreference 기본값은 Continue이므로 WarningAction 매개 변수를 사용하지 않는 한 경고가 표시되고 실행이 계속됩니다.
-WarningAction:Continue 는 경고 메시지를 표시하고 명령을 계속 실행합니다.
Continue 기본값입니다.
-WarningAction:Inquire 는 경고 메시지를 표시하고 실행을 계속하기 전에 확인 메시지를 표시합니다. 이 값은 거의 사용되지 않습니다.
-WarningAction:SilentlyContinue 는 경고 메시지를 표시하지 않고 명령을 계속 실행합니다.
-WarningAction:Stop 는 경고 메시지를 표시하고 명령 실행을 중지합니다.
비고
WarningAction 매개 변수는 매개 변수가 스크립트 또는 함수를 실행하는 명령에 사용될 때 기본 설정 변수의 값을 $WarningAction 재정의하지만 바꾸지는 않습니다.
경고 변수
WarningVariable의 별칭은 wv입니다.
명령에 대한 경고를 지정된 변수에 저장합니다.
생성된 모든 경고는 사용자에게 경고가 표시되지 않더라도 변수에 저장됩니다.
변수 콘텐츠에 경고를 추가하려면 이미 저장되어 있을 수 있는 경고를 바꾸는 대신 변수 이름 앞에 더하기 기호(+)를 입력합니다.
예를 들어 다음 명령은 변수를 $a 만든 다음 경고를 저장합니다.
Get-Process -Id 6 -WarningVariable a
다음 명령은 변수에 $a 경고를 추가합니다.
Get-Process -Id 2 -WarningVariable +a
다음 명령은 다음의 $a내용을 표시합니다.
$a
이 매개 변수를 사용하여 특정 명령의 경고만 포함하는 변수를 만들 수 있습니다. 변수에 저장된 특정 경고와 같은 $a[0] 배열 표기법을 사용하거나 $warning[1,2] 참조할 수 있습니다.
비고
WarningVariable 매개 변수는 함수 또는 스크립트의 중첩된 호출에서 경고를 캡처하지 않습니다.
위험 관리 매개 변수 설명
Whatif
WhatIf의 별칭은 wi입니다.
명령을 실행하는 대신 명령의 효과를 설명하는 메시지를 표시합니다.
WhatIf 매개 변수는 현재 명령에 대한 변수 값을 재정의 $WhatIfPreference 합니다. 변수의 $WhatIfPreference 기본값은 0(사용 안 함)이므로 WhatIf 매개 변수 없이는 WhatIf 동작이 수행되지 않습니다. 자세한 내용을 보려면 다음 명령을 입력하십시오.
Get-Help 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의 별칭은 cf입니다.
명령을 실행하기 전에 확인 메시지를 표시합니다.
Confirm 매개 변수는 현재 명령에 대한 변수 값을 $ConfirmPreference 재정의합니다. 기본값은 true입니다. 자세한 내용을 보려면 다음 명령을 입력하십시오.
Get-Help about_Preference_Variables
-Confirm:$true 와 같은 효과가 -Confirm있습니다.
-Confirm:$false 값이 cmdlet의 $ConfirmPreference 예상 위험보다 작거나 같을 때 발생하는 자동 확인을 표시하지 않습니다.
예를 들어 다음 명령은 명령 과 함께 Remove-Item Confirm 매개 변수를 사용합니다. 항목을 제거하기 전에 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"):
응답 확인 옵션은 다음과 같습니다.
| 응답 | 결과 |
|---|---|
| 예(Y) | 선택한 작업을 수행합니다. |
| 모두 예(A) | 모든 작업을 수행하고 후속 Confirm 쿼리를 억제합니다. |
| 이 명령의 경우. | |
| 아니오 (N): | 작업을 수행하지 마십시오. |
| 모두 아니오 (L): | 아무 작업도 수행하지 말고 후속 확인을 표시하지 않습니다. |
| 이 명령에 대한 쿼리입니다. | |
| 일시 중단(S): | 명령을 일시 중지하고 임시 세션을 만듭니다. |
| 도움말 (?) | 이러한 옵션에 대한 도움말을 표시합니다. |
일시 중단 옵션은 명령을 보류하고 Confirm 옵션을 선택할 준비가 될 때까지 작업할 수 있는 임시 중첩 세션을 만듭니다. 중첩된 세션에 대한 명령 프롬프트에는 원래 부모 명령의 자식 작업임을 나타내는 두 개의 추가 캐럿(>>)이 있습니다. 중첩된 세션에서 명령 및 스크립트를 실행할 수 있습니다. 중첩된 세션을 종료하고 원래 명령에 대한 Confirm 옵션으로 돌아가려면 "exit"를 입력합니다.
다음 예제에서는 사용자가 명령 매개 변수에 대한 도움말을 확인하는 동안 일시 중단 옵션(S)을 사용하여 명령을 일시적으로 중지합니다. 필요한 정보를 얻은 후 사용자는 "exit"를 입력하여 중첩된 프롬프트를 종료한 다음 Confirm 쿼리에 대한 예(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
키워드
about_Common_Parameters