Vintage appMaker의 Tech Blog

[gemini-cli] pipe(wmic)를 이용한 하드웨어 정보처리 본문

Source code or Tip/생성AI

[gemini-cli] pipe(wmic)를 이용한 하드웨어 정보처리

VintageappMaker 2025. 9. 6. 17:46

0. gemini-cli와 파이프 통신

다른 프로그램의 결과를 가지고와서 gemini-cli에게 분석할 수 있도록 한다. 이는 터미널 사용법의 기본인 파이프(|) 기능을 활용하면 가능하다. 파이프 기능은 IPC(Inter Process Communication)이라고 불리는 다른 프로그램간의 정보소통 방식으로 운영체제(OS)라는 것이 만들어졌을 때부터 제공되었던 고전적이고 기초적인 방법이다.

wmic은 윈도우 운영체제에서 제공하는 하드웨어/소프트웨어 정보를 볼 수 있는 유틸리티로서 하드웨어 엔지니어나 기타 파워유저들에게는 필수 유틸리티이다.

wmic cpu get name | gemini -p "CPU정보를 보고 제조사, 제작연도, 특장점을 정리해줘" 

wmic path win32_VideoController get name | gemini -p "그래픽 카드의 정보를 보고 2025년 현재 어떤 수준의 퍼포먼스를 보여주는 지 정리해줘. 추천하는 게임 리스트도 보여줘"

1. WMIC 명령어 사용법

WMIC(Windows Management Instrumentation Command-line)는 시스템 관리자가 로컬 및 원격 컴퓨터에 대한 정보를 관리하고 검색하기 위한 명령줄 도구이다.

기본 구문

wmic [전역 스위치] <별칭> [<where 절>] [<동사 절>]
  • 전역 스위치: 원격 컴퓨터 지정(/NODE), 사용자 자격 증명(/USER, /PASSWORD), 출력 형식(/OUTPUT) 등 명령의 전체 동작을 수정합니다.
  • 별칭: OS, CPU, 프로세스와 같이 시스템 관리의 특정 영역을 나타내는 WMI 클래스의 단순화된 이름이다.
  • Where 절: 특정 속성 값을 기반으로 결과를 필터링하는 데 사용됩니다.
  • 동사 절: 데이터 검색(GET, LIST), 메서드 실행(CALL) 등 수행할 작업을 지정합니다.

주요 명령어 표

명령어 (별칭) 설명 주요 속성 사용 예
os 운영 체제 Caption, Version, OSArchitecture, LastBootUpTime wmic os get Caption, Version
cpu 중앙 처리 장치 Name, NumberOfCores, NumberOfLogicalProcessors wmic cpu get Name, NumberOfCores
bios 바이오스 정보 Manufacturer, SerialNumber, Version wmic bios get Manufacturer, SerialNumber
computersystem 컴퓨터 시스템 정보 Name, Domain, Model, TotalPhysicalMemory wmic computersystem get Name, Model
diskdrive 물리 디스크 드라이브 Model, SerialNumber, Size, Partitions wmic diskdrive get Model, Size
logicaldisk 논리 디스크 (드라이브) DeviceID, FileSystem, Size, FreeSpace wmic logicaldisk where "DriveType=3" get DeviceID, Size, FreeSpace
product 설치된 소프트웨어 Name, Version, InstallDate, Vendor wmic product get Name, Version
process 실행 중인 프로세스 Name, ProcessID, ExecutablePath wmic process where "name='chrome.exe'" get ProcessID
service 시스템 서비스 Name, DisplayName, State, StartMode wmic service where "State='Running'" get DisplayName
useraccount 사용자 계정 Name, Domain, SID, Disabled wmic useraccount get Name, SID
qfe 설치된 업데이트 (핫픽스) HotFixID, Description, InstalledOn wmic qfe get HotFixID, InstalledOn
nicconfig 네트워크 어댑터 IPAddress, MACAddress, DefaultIPGateway wmic nicconfig where "IPEnabled=true" get IPAddress, MACAddress

주요 동사

동사 설명 사용 예
GET 별칭의 특정 속성을 검색합니다. wmic os get Name, Version
LIST 별칭에 대한 인스턴스 목록을 표시합니다. wmic process list brief
CALL 별칭에 대한 메서드를 실행합니다. wmic process where name="notepad.exe" call terminate
CREATE 새 인스턴스를 만듭니다. wmic process call create "calc.exe"
DELETE 인스턴스를 삭제합니다. wmic process where name="calc.exe" delete

2. WMIC 사용 예제

Windows Management Instrumentation Command-line(WMIC)은 시스템 정보를 얻고 관리 작업을 수행하는 데 사용되는 강력한 명령줄 유틸리티입니다. 다음은 10가지 유용한 WMIC 사용 예제이다.


1. CPU 정보 확인

시스템에 설치된 CPU의 이름, 코어 수, 최대 클럭 속도를 확인한다.

wmic cpu get name, numberofcores, maxclockspeed

2. 메모리(RAM) 정보 확인

각 메모리 모듈의 용량, 속도 및 장치 위치(슬롯)를 확인한다.

wmic memorychip get capacity, speed, devicelocator

3. 운영 체제(OS) 정보 확인

설치된 운영 체제의 이름(Caption), 버전, 빌드 번호를 확인한다.

wmic os get caption, version, buildnumber

4. 디스크 드라이브 정보 확인

물리적 디스크 드라이브의 모델명, 크기, 인터페이스 유형을 확인한다.

wmic diskdrive get model, size, interfacetype

5. 실행 중인 프로세스 목록 확인

현재 실행 중인 모든 프로세스의 이름, 프로세스 ID(PID), 부모 프로세스 ID(PPID)를 확인한다.

wmic process get name, processid, parentprocessid

6. 시작 프로그램 목록 확인

시스템 시작 시 자동으로 실행되는 프로그램의 명령어와 사용자 계정을 확인한다.

wmic startup get command, user

7. 네트워크 어댑터 구성 확인

IP가 활성화된 네트워크 어댑터의 IP 주소, MAC 주소, 설명을 확인한다.

wmic nicconfig where "ipenabled='true'" get ipaddress, macaddress, description

8. 메인보드 정보 확인

메인보드의 제품명, 제조사, 시리얼 번호를 확인한다.

wmic baseboard get product, manufacturer, serialnumber

9. 사용자 계정 정보 확인

시스템의 모든 사용자 계정 이름과 SID(보안 식별자)를 확인한다.

wmic useraccount get name, sid

10. 프로그램 제거

설치된 프로그램 중 이름이 'Java'로 시작하는 프로그램을 제거한다. (주의: 이 명령어는 실제로 프로그램을 제거하므로 사용에 주의가 필요.)

wmic product where "name like 'Java%%'" call uninstall
Comments