Get-ComputerInfo

Pobiera szczegółowe informacje o sprzęcie i systemie operacyjnym.

Get-ComputerInfo to cmdlet PowerShella (dostępny od wersji 5.1, z modułu Microsoft.PowerShell.Management), który jednym strzałem zwraca skonsolidowany obiekt z setką z górą właściwości opisujących komputer — od wersji i buildu systemu, przez producenta i model płyty, BIOS/UEFI, architekturę procesora, ilość RAM, aż po strefę czasową, ustawienia regionalne i status Hyper-V. Zamiast biegać po pięciu różnych narzędziach (systeminfo, WMI, rejestr), dostajesz wszystko w jednym miejscu i w postaci obiektu, który możesz dalej filtrować i eksportować.

Składnia i najważniejsze opcje

Podstawowa składnia jest banalnie krótka:

Get-ComputerInfo [-Property ]

  • -Property — lista nazw właściwości, które chcesz zobaczyć; obsługuje symbole wieloznaczne (np. "Os*"), więc nie musisz wyklikiwać wszystkiego ręcznie.
  • -Verbose — wspólny parametr; pokazuje, co cmdlet robi po drodze (przydatne, gdy zbieranie danych się ślimaczy).
  • -ErrorAction — sterowanie reakcją na błędy, np. SilentlyContinue, gdy część właściwości nie da się odczytać.
  • -OutVariable — zapisuje wynik do zmiennej obok normalnego wyjścia, bez powtarzania zapytania.

To w zasadzie tyle — cmdlet nie ma parametru komputera zdalnego ani poświadczeń. Działa na maszynie lokalnej. Resztę „parametrów” stanowią wspólne parametry PowerShella.

Przykłady użycia

  • Get-ComputerInfo — wypluwa pełny zestaw właściwości lokalnego komputera. Dobre na start, żeby zobaczyć, co w ogóle jest dostępne.
  • Get-ComputerInfo -Property "OsName","OsVersion","OsBuildNumber" — pokazuje tylko nazwę, wersję i numer buildu systemu. Szybka odpowiedź na pytanie „jaki to Windows”.
  • Get-ComputerInfo -Property "Os*" — dzięki symbolowi wieloznacznemu zwraca wszystkie właściwości zaczynające się od Os.
  • Get-ComputerInfo -Property "CsManufacturer","CsModel","BiosSeralNumber" — producent, model i numer seryjny BIOS. Wygodne do inwentaryzacji sprzętu.
  • Get-ComputerInfo | Export-Csv -Path C:\info.csv -NoTypeInformation — zapisuje cały raport do pliku CSV, np. do dokumentacji parku maszyn.

Częste błędy i pułapki

Po pierwsze: to jest komenda lokalna. Nie ma parametru -ComputerName ani -Credential — jeśli chcesz dane ze zdalnej maszyny, opakuj wywołanie w Invoke-Command. Po drugie, cmdlet bywa wolny (sekundy, nie milisekundy), bo pod spodem odpytuje wiele źródeł WMI/CIM; nie wpadaj w panikę, gdy chwilę myśli. Po trzecie, część właściwości potrafi zwrócić puste pole, jeśli sprzęt lub firmware danej informacji nie udostępnia — to nie błąd komendy, tylko brak danych. I uwaga na literówki w nazwach właściwości: PowerShell nie krzyknie, po prostu nic nie zwróci, więc sprawdź pisownię na pełnym wyniku.

Powiązane komendy: systeminfo (klasyczny odpowiednik z cmd), Get-CimInstance, Get-WmiObject, Get-HotFix oraz Export-Csv do zapisu wyników.