Debug-Process
로컬 컴퓨터에서 실행되는 하나 이상의 프로세스를 디버그합니다.
구문
Name (기본값)
Debug-Process
[-Name] <String[]>
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Id
Debug-Process
[-Id] <Int32[]>
[-WhatIf]
[-Confirm]
[<CommonParameters>]
InputObject
Debug-Process
-InputObject <Process[]>
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Description
Debug-Process cmdlet은 로컬 컴퓨터에서 실행 중인 하나 이상의 프로세스에 디버거를 연결합니다.
프로세스 이름 또는 프로세스 ID(PID)로 프로세스를 지정하거나 프로세스 개체를 이 cmdlet으로 파이프할 수 있습니다.
이 cmdlet은 프로세스에 등록된 디버거를 연결합니다. 이 cmdlet을 사용하기 전에 디버거가 설치되고 구성되어 있는지 확인합니다.
예제
예제 1: 컴퓨터의 프로세스에 디버거 연결
Debug-Process -Name powershell
이 명령은 컴퓨터의 PowerShell 프로세스에 디버거를 연결합니다.
예제 2: 지정된 문자열로 시작하는 모든 프로세스에 디버거 연결
Debug-Process -Name note*
이 명령은 이름이 note으로 시작하는 모든 프로세스에 디버거를 연결합니다.
예제 3: 여러 프로세스에 디버거 연결
Debug-Process "Winlogon", "Explorer", "Outlook"
이 명령은 Winlogon, Explorer 및 Outlook 프로세스에 디버거를 연결하려고 시도합니다. Winlogon은 보호된 프로세스입니다. Winlogon을 디버그하려면 관리자 권한으로 명령을 실행해야 합니다.
예제 4: 여러 프로세스 ID에 디버거 연결
Debug-Process -Id 1132, 2028
이 명령은 프로세스 ID 1132 및 2028이 있는 프로세스에 디버거를 연결합니다.
예제 5: Get-Process 사용하여 프로세스를 가져와서 디버거를 연결합니다.
Get-Process powershell | Debug-Process
이 명령은 컴퓨터의 PowerShell 프로세스에 디버거를 연결합니다.
Get-Process cmdlet을 사용하여 컴퓨터에서 PowerShell 프로세스를 가져와 파이프라인 연산자(|)를 사용하여 프로세스를 Debug-Process cmdlet으로 보냅니다.
특정 PowerShell 프로세스를 지정하려면 Get-Process 매개 변수를 사용합니다.
예제 6: 로컬 컴퓨터의 현재 프로세스에 디버거 연결
Debug-Process -Id $PID
이 명령은 컴퓨터의 현재 PowerShell 프로세스에 디버거를 연결합니다.
이 명령은 현재 PowerShell 프로세스의 프로세스 ID를 포함하는 $PID 자동 변수를 사용합니다. 그런 다음 파이프라인 연산자(|)를 사용하여 프로세스 ID를 Debug-Process cmdlet으로 보냅니다.
$PID 자동 변수에 대한 자세한 내용은 about_Automatic_Variables참조하세요.
예제 7: InputObject 매개 변수를 사용하는 프로세스에 디버거 연결
$P = Get-Process powershell
Debug-Process -InputObject $P
이 명령은 로컬 컴퓨터의 PowerShell 프로세스에 디버거를 연결합니다.
첫 번째 명령은 Get-Process cmdlet을 사용하여 컴퓨터에서 PowerShell 프로세스를 가져옵니다. 결과 프로세스 개체를 $P변수에 저장합니다.
두 번째 명령은 cmdlet의 Debug-Process 매개 변수를 사용하여 $P 변수에 프로세스 개체를 제출합니다.
매개 변수
-Confirm
cmdlet을 실행하기 전에 확인 메시지를 표시합니다.
매개 변수 속성
| 형식: | SwitchParameter |
| Default value: | False |
| 와일드카드 지원: | False |
| DontShow: | False |
| 별칭: | cf(cf) |
매개 변수 집합
(All)
| Position: | Named |
| 필수: | False |
| 파이프라인의 값: | False |
| 속성 이름별 파이프라인의 값: | False |
| 나머지 인수의 값: | False |
-Id
디버그할 프로세스의 프로세스 ID를 지정합니다. ID 매개 변수 이름은 선택 사항입니다.
프로세스의 프로세스 ID를 찾으려면 Get-Process입력합니다.
매개 변수 속성
| 형식: | Int32[] |
| Default value: | None |
| 와일드카드 지원: | False |
| DontShow: | False |
| 별칭: | PID, ProcessId |
매개 변수 집합
Id
| Position: | 0 |
| 필수: | True |
| 파이프라인의 값: | False |
| 속성 이름별 파이프라인의 값: | True |
| 나머지 인수의 값: | False |
-InputObject
디버그할 프로세스를 나타내는 프로세스 개체를 지정합니다. 프로세스 개체 또는 프로세스 개체를 가져오는 명령(예: Get-Process cmdlet)을 포함하는 변수를 입력합니다. 프로세스 개체를 이 cmdlet으로 파이프할 수도 있습니다.
매개 변수 속성
| 형식: | Process[] |
| Default value: | None |
| 와일드카드 지원: | False |
| DontShow: | False |
매개 변수 집합
InputObject
| Position: | Named |
| 필수: | True |
| 파이프라인의 값: | True |
| 속성 이름별 파이프라인의 값: | False |
| 나머지 인수의 값: | False |
-Name
디버그할 프로세스의 이름을 지정합니다. 이름이 같은 프로세스가 두 개 이상 있는 경우 이 cmdlet은 해당 이름의 모든 프로세스에 디버거를 연결합니다. Name 매개 변수는 선택 사항입니다.
매개 변수 속성
| 형식: | String[] |
| Default value: | None |
| 와일드카드 지원: | False |
| DontShow: | False |
| 별칭: | ProcessName |
매개 변수 집합
Name
| Position: | 0 |
| 필수: | True |
| 파이프라인의 값: | False |
| 속성 이름별 파이프라인의 값: | True |
| 나머지 인수의 값: | False |
-WhatIf
cmdlet이 실행되면 어떻게 되는지 보여 주세요. cmdlet이 실행되지 않습니다.
매개 변수 속성
| 형식: | SwitchParameter |
| Default value: | False |
| 와일드카드 지원: | False |
| DontShow: | False |
| 별칭: | 위스콘신 |
매개 변수 집합
(All)
| Position: | Named |
| 필수: | False |
| 파이프라인의 값: | False |
| 속성 이름별 파이프라인의 값: | False |
| 나머지 인수의 값: | False |
CommonParameters
이 cmdlet은 일반적인 매개 변수인 -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction 및 -WarningVariable 매개 변수를 지원합니다. 자세한 내용은 about_CommonParameters를 참조하세요.
입력
Int32
프로세스 ID를 이 cmdlet으로 파이프할 수 있습니다.
Process
프로세스 개체를 이 cmdlet으로 파이프할 수 있습니다.
String
프로세스 이름을 이 cmdlet으로 파이프할 수 있습니다.
출력
None
이 cmdlet은 출력을 반환하지 않습니다.
참고
이 cmdlet은 WMI(Windows Management Instrumentation) Win32_Process 클래스의 AttachDebugger 메서드를 사용합니다. 이 메서드에 대한 자세한 내용은 Microsoft Learn의 AttachDebugger 메서드 참조하세요.