PnPUtil(PnPUtil.exe)은 windows Vista부터 시작하여 %windir%\system32 디렉터리의 모든 Windows 버전에 포함됩니다.
PnPUtil을 실행하려면 명령 프롬프트 창(관리자 권한으로 실행)을 열고 다음 구문 및 매개 변수를 사용하여 명령을 입력합니다.
PNPUTIL [/add-driver <...> | /delete-driver <...> |
/export-driver <...> | /enum-drivers |
/enum-devices [<...>] | /enum-devicetree [<...>] |
/disable-device <...> | /enable-device <...> |
/restart-device <...> | /remove-device <...> |
/scan-devices [<...>] | /enum-classes [<...>] |
/enum-interfaces [<...>] | /enum-containers [<...>] |
/?]
명령어
/add-driver
드라이버 저장소에 드라이버 패키지를 추가합니다. Windows 10 버전 1607부터 사용할 수 있는 명령입니다.
PNPUTIL /add-driver <filename.inf | *.inf> [/subdirs] [/install] [/reboot]
Windows 10 버전 1607부터 사용할 수 있는 플래그:
-
/subdirs- 드라이버 패키지에 대한 하위 디렉터리 트래버스 -
/install- 일치하는 디바이스에 드라이버 설치/업데이트 -
/reboot- 작업을 완료하는 데 필요한 경우 시스템을 다시 부팅합니다.
비고
드라이버가 시스템에서 가장 높은 순위의 드라이버가 아닌 경우 PnPUtil은 디바이스에 강제로 연결하지 않습니다.
일치하는 드라이버 및 해당 순위를 확인하려면 관리자 권한 명령 프롬프트 pnputil /enum-devices /instanceid <devgen device instance ID ROOT\DEVGEN{...}> /drivers에서 다음을 실행합니다.
/delete-driver
드라이버 저장소에서 드라이버 패키지를 삭제합니다. Windows 10 버전 1607부터 사용할 수 있는 명령입니다.
PNPUTIL /delete-driver <oem#.inf> [/uninstall] [/force] [/reboot]
Windows 10 버전 1607부터 사용할 수 있는 플래그:
-
/uninstall- 드라이버 패키지를 사용하는 모든 디바이스에서 드라이버 패키지 제거 -
/force- 디바이스에서 사용 중인 경우에도 드라이버 패키지 삭제 -
/reboot- 작업을 완료하는 데 필요한 경우 시스템을 다시 부팅합니다.
/export-driver
드라이버 저장소에서 대상 디렉터리로 드라이버 패키지를 내보냅니다. Windows 10 버전 1607부터 사용할 수 있는 명령입니다.
PNPUTIL /export-driver <oem#.inf | *> <target directory>
/enum-drivers
드라이버 저장소의 모든 타사 드라이버 패키지를 열거합니다. Windows 10 버전 1607부터 사용할 수 있는 명령입니다.
PNPUTIL /enum-drivers [/class <name | GUID>] [/files]
Windows 11 버전 21H2부터 사용할 수 있는 플래그:
-
/class <name | GUID>- 드라이버 클래스 이름 또는 GUID로 필터링
Windows 11 버전 22H2부터 사용할 수 있는 플래그:
-
/files- 모든 드라이버 패키지 파일 열거
/disable-device
시스템에서 디바이스를 사용하지 않도록 설정합니다. Windows 10 버전 2004부터 사용할 수 있는 명령입니다.
PNPUTIL /disable-device [<instance ID> | /deviceid <device ID>]
[/class <name | GUID>]
[/bus <name | GUID>]
[/reboot] [/force]
Windows 10 버전 2004부터 사용할 수 있는 플래그:
-
/reboot- 작업을 완료하는 데 필요한 경우 시스템을 다시 부팅합니다.
Windows 11 버전 21H2부터 사용할 수 있는 플래그:
-
/deviceid <device ID>- 일치하는 디바이스 ID를 사용하여 모든 디바이스 사용 안 함
Windows 11 버전 22H2부터 사용할 수 있는 플래그:
-
/class <name | GUID>- 디바이스 클래스 이름 또는 GUID로 필터링 -
/bus <name | GUID>- 버스 열거자 이름 또는 버스 유형 GUID로 필터링 -
/force- 디바이스가 중요한 시스템 기능을 제공하는 경우에도 사용하지 않도록 설정
/enable-device
시스템에서 디바이스를 사용하도록 설정합니다. Windows 10 버전 2004부터 사용할 수 있는 명령입니다.
PNPUTIL /enable-device [<instance ID> | /deviceid <device ID>]
[/class <name | GUID>] [/bus <name | GUID>]
[/reboot]
Windows 10 버전 2004부터 사용할 수 있는 플래그:
-
/reboot- 작업을 완료하는 데 필요한 경우 시스템을 다시 부팅합니다.
Windows 11 버전 21H2부터 사용할 수 있는 플래그:
-
/deviceid <device ID>- 일치하는 디바이스 ID를 사용하여 모든 디바이스 사용
Windows 11 버전 22H2부터 사용할 수 있는 플래그:
-
/class <name | GUID>- 디바이스 클래스 이름 또는 GUID로 필터링 -
/bus <name | GUID>- 버스 열거자 이름 또는 버스 유형 GUID로 필터링
/restart-device
시스템에서 디바이스를 다시 시작합니다. Windows 10 버전 2004부터 사용할 수 있는 명령입니다.
PNPUTIL /restart-device [<instance ID> | /deviceid <device ID>]
[/class <name | GUID>] [/bus <name | GUID>]
[/reboot]
Windows 10 버전 2004부터 사용할 수 있는 플래그:
-
/reboot- 작업을 완료하는 데 필요한 경우 시스템을 다시 부팅합니다.
Windows 11 버전 21H2부터 사용할 수 있는 플래그:
-
/deviceid <device ID>- 일치하는 디바이스 ID를 사용하여 모든 디바이스 다시 시작
Windows 11 버전 22H2부터 사용할 수 있는 플래그:
-
/class <name | GUID>- 디바이스 클래스 이름 또는 GUID로 필터링 -
/bus <name | GUID>- 버스 열거자 이름 또는 버스 유형 GUID로 필터링합니다.
/remove-device
시스템에서 디바이스를 제거하려고 시도합니다. Windows 10 버전 2004부터 사용할 수 있는 명령입니다.
PNPUTIL /remove-device [<instance ID> | /deviceid <device ID>]
[/class <name | GUID>] [/bus <name | GUID>]
[/subtree] [/reboot] [/force]
Windows 10 버전 2004부터 사용할 수 있는 플래그:
-
/subtree- 모든 자식 디바이스를 포함하여 전체 디바이스 하위 트리 제거 -
/reboot- 작업을 완료하는 데 필요한 경우 시스템을 다시 부팅합니다.
Windows 11 버전 21H2부터 사용할 수 있는 플래그:
-
/deviceid <device ID>- 일치하는 디바이스 ID를 사용하여 모든 디바이스 제거
Windows 11 버전 22H2부터 사용할 수 있는 플래그:
-
/class <name | GUID>- 디바이스 클래스 이름 또는 GUID로 필터링 -
/bus <name | GUID>- 버스 열거자 이름 또는 버스 유형 GUID로 필터링 -
/force- 디바이스가 중요한 시스템 기능을 제공하는 경우에도 제거
/scan-devices
시스템에서 디바이스 하드웨어 변경 내용을 검사합니다. Windows 10 버전 2004부터 사용할 수 있는 명령입니다.
/scan-devices [/instanceid <instance ID>] [/async]
Windows 10 버전 2004부터 사용할 수 있는 플래그:
-
/instanceid <instance ID>- 디바이스 하위 트리에서 변경 내용 검사 -
/async- 비동기적으로 변경 내용 검색
/enum-devices
시스템의 모든 디바이스를 열거합니다. Windows 10 버전 1903부터 사용할 수 있는 명령입니다.
PNPUTIL /enum-devices [/connected | /disconnected]
[/instanceid <instance ID> | /deviceid <device ID>]
[/class <name | GUID>] [/problem [<code>]]
[/bus [<name | GUID>]] [/deviceids] [/relations]
[/services] [/stack] [/drivers] [/interfaces]
[/properties] [/resources]
Windows 10 버전 1903부터 사용할 수 있는 플래그:
-
/connected- 연결된 디바이스로 필터링 -
/disconnected- 연결이 끊긴 디바이스로 필터링 -
/instanceid <instance ID>- 디바이스 인스턴스 ID로 필터링 -
/class <name | GUID>- 디바이스 클래스 이름 또는 GUID로 필터링 -
/problem [<code>]- 문제가 있는 디바이스별로 필터링하거나 특정 문제 코드로 필터링 -
/relations- 부모 및 자식 디바이스 관계 표시
Windows 10 버전 2004부터 사용할 수 있는 플래그:
-
/drivers- 일치 및 설치된 드라이버 표시
Windows 11 버전 21H2부터 사용할 수 있는 플래그:
-
/bus [<name | GUID>]- 버스 열거자 이름 및 버스 유형 GUID를 표시하거나 버스 열거자 이름 또는 버스 유형 GUID로 필터링 -
/deviceids- 하드웨어 및 호환 ID 표시 -
/services- 디바이스 서비스 표시 -
/stack- 효과적인 디바이스 스택 정보 표시 -
/interfaces- 디바이스 인터페이스 표시 -
/properties- 모든 디바이스 속성 표시
Windows 11 버전 22H2부터 사용할 수 있는 플래그:
-
/deviceid <device ID>- 디바이스 하드웨어 및 호환 ID로 필터링 -
/resources- 디바이스 리소스 표시
/enum-devicetree
디바이스 트리를 열거합니다.
Windows 11 버전 23H2부터 사용할 수 있는 명령입니다.
/enum-devicetree [root device instance ID] [/connected] [/services]
[/stack] [/drivers] [/interfaces]
root device instance ID - 지정된 루트 디바이스 인스턴스 ID에서 시작하는 디바이스 트리를 표시합니다.
Flags
-
/connected- 연결된 디바이스로 필터링 -
/services- 디바이스 서비스 표시 -
/stack- 효과적인 디바이스 스택 정보 표시 -
/drivers- 일치 및 설치된 드라이버 표시 -
/interfaces- 디바이스 인터페이스 표시
/enum-interfaces
시스템의 모든 디바이스 인터페이스를 열거합니다.
Windows 10 버전 1903부터 사용할 수 있는 명령입니다.
PNPUTIL /enum-interfaces [/enabled | /disabled] [/class <GUID>] [/properties]
Windows 10 버전 1903부터 사용할 수 있는 플래그:
-
/enabled- 활성화된 인터페이스로 필터링 -
/disabled- 비활성화된 인터페이스로 필터링 -
/class <GUID>- 인터페이스 클래스 GUID로 필터링
Windows 11 버전 22H2부터 사용할 수 있는 플래그:
-
/properties- 모든 인터페이스 속성 표시
/enum-classes
시스템의 모든 디바이스 클래스를 열거합니다.
Windows 11 버전 22H2부터 사용할 수 있는 명령입니다.
PNPUTIL /enum-classes [/class <name | GUID>] [/services]
Windows 11 버전 22H2부터 사용할 수 있는 플래그:
-
/class <name | GUID>- 디바이스 클래스 이름 또는 GUID로 필터링 -
/services- 디바이스 클래스 서비스 표시
/enum-containers
시스템의 모든 디바이스 컨테이너를 열거합니다.
Windows 11 버전 23H2부터 사용할 수 있는 명령입니다.
PNPUTIL /enum-containers [/containerid <container id>] [/connected | /disconnected]
[/problem] [/devices] [/format <txt | xml | csv>]
[/output-file [<filename>]]
Flags
/containerid <container id> - 컨테이너 ID로 필터링합니다.
/connected | /disconnected - 연결된 디바이스 컨테이너로 필터링하거나 연결이 끊긴 디바이스 컨테이너로 필터링
/problem - 문제가 있는 디바이스 컨테이너로 필터링
/devices - 컨테이너 디바이스 표시
/format - 출력을 텍스트, XML 또는 CSV로 서식 지정
/output-file [<filename>] - 선택적 파일 이름에 출력 쓰기
/?
명령줄 구문을 표시합니다.
PNPUTIL /?
레거시 명령 매핑
다음 명령은 여전히 지원되지만 레거시입니다. 대신 up-to-date 구문을 사용하는 것이 좋습니다.
-a [-i] <filename.inf> ==> /add-driver <filename.inf> [/install]
-d [-f] <oem#.inf> ==> /delete-driver <oem#.inf> [/force]
-e ==> /enum-drivers
예시
PnPUtil 도구를 사용하는 방법에 대한 예제는 PnPUtil 예제참조하세요.