Zbieranie informacji dotyczących komputerówCollecting Information About Computers

Polecenia cmdlet z CimCmdlets modułu są najważniejsze polecenia cmdlet do wykonywania ogólnych zadań zarządzania.Cmdlets from CimCmdlets module are the most important cmdlets for general system management tasks. Wszystkie ustawienia podsystemu krytyczne są udostępniane za pośrednictwem usługi WMI.All critical subsystem settings are exposed through WMI. Ponadto WMI dane są traktowane jako obiekty, które znajdują się w kolekcji jednego lub więcej elementów.Furthermore, WMI treats data as objects that are in collections of one or more items. Ponieważ środowisko Windows PowerShell również współpracuje z obiektami i ma potok, który umożliwia traktowanie jednego lub wielu obiektów w taki sam sposób, ogólny dostęp usługi WMI umożliwia wykonywanie niektórych zaawansowanych zadań z bardzo małego wysiłku.Because Windows PowerShell also works with objects and has a pipeline that allows you to treat single or multiple objects in the same way, generic WMI access allows you to perform some advanced tasks with very little work.

W poniższych przykładach pokazano, jak zbierać określone informacje przy użyciu Get-CimInstance względem dowolnego komputera.The following examples demonstrate how to collect specific information by using Get-CimInstance against an arbitrary computer. Określono ComputerName parametru z wartością kropka (.), która reprezentuje komputer lokalny.We specify the ComputerName parameter with the dot value (.), which represents the local computer. Można określić nazwę lub adres IP skojarzony z dowolnego komputera, który można otworzyć za pomocą usługi WMI.You can specify a name or IP address associated with any computer you can reach through WMI. Aby uzyskać informacje o komputerze lokalnym, można pominąć ComputerName parametru.To retrieve information about the local computer, you could omit the ComputerName parameter.

Wyświetlanie ustawień pulpituListing Desktop Settings

Rozpocznie się za pomocą polecenia, które zbiera informacje o stacji roboczych na komputerze lokalnym.We'll begin with a command that collects information about the desktops on the local computer.

Get-CimInstance -ClassName Win32_Desktop -ComputerName .

Zwraca informacje dotyczące wszystkich pulpitach, czy są one używane lub nie.This returns information for all desktops, whether they are in use or not.

Uwaga

Informacje zwrócone przez niektóre klasy usługi WMI może być bardzo szczegółowe i często zawierają metadane dotyczące klasy usługi WMI.Information returned by some WMI classes can be very detailed, and often include metadata about the WMI class. Ponieważ większość tych właściwości metadanych mają nazwy zaczynające się Cim, można filtrować przy użyciu właściwości Select-Object.Because most of these metadata properties have names that begin with Cim, you can filter the properties using Select-Object. Określ - ExcludeProperty parametr "Cim *" jako wartości.Specify the -ExcludeProperty parameter with "Cim*" as the value. Przykład:For example:

Get-CimInstance -ClassName Win32_Desktop -ComputerName . | Select-Object -ExcludeProperty "CIM*"

Filtrowanie metadanych, należy użyć operatora potoku (|) do wysyłania wyniki Get-CimInstance polecenie Select-Object -ExcludeProperty "CIM*".To filter out the metadata, use a pipeline operator (|) to send the results of the Get-CimInstance command to Select-Object -ExcludeProperty "CIM*".

Wyświetlanie informacji o systemie BIOSListing BIOS Information

WMI Win32_BIOS klasy zwraca stosunkowo małe i kompletne informacje dotyczące systemu BIOS na komputerze lokalnym:The WMI Win32_BIOS class returns fairly compact and complete information about the system BIOS on the local computer:

Get-CimInstance -ClassName Win32_BIOS -ComputerName .

Wyświetlanie informacji o procesoraListing Processor Information

Informacje o procesorze ogólne można pobrać za pomocą usługi WMI Win32_Processor klasy, mimo że będzie prawdopodobnie chcesz filtrować informacje:You can retrieve general processor information by using WMI's Win32_Processor class, although you will likely want to filter the information:

Get-CimInstance -ClassName Win32_Processor -ComputerName . | Select-Object -ExcludeProperty "CIM*"

Ogólny opis ciągu rodziny procesora, można tylko zwrócić typem systemu właściwości:For a generic description string of the processor family, you can just return the SystemType property:

Get-CimInstance -ClassName Win32_ComputerSystem -ComputerName . | Select-Object -Property SystemType

SystemType
----------
X86-based PC

Lista komputerów producenta i ModelListing Computer Manufacturer and Model

Informacje o komputerze modelu jest również dostępna z Win32_ComputerSystem.Computer model information is also available from Win32_ComputerSystem. Standardowa wyświetlanych wyników nie będzie żadnego filtrowania danych OEM:The standard displayed output will not need any filtering to provide OEM data:

Get-CimInstance -ClassName Win32_ComputerSystem
Name PrimaryOwnerName Domain    TotalPhysicalMemory Model                   Manufacturer
---- ---------------- ------    ------------------- -----                   ------------
MyPC Jane Doe         WORKGROUP 804765696           DA243A-ABA 6415cl NA910 Compaq Presario 06

Dane wyjściowe poleceń, takich jak ta, które zwracają informacje bezpośrednio z niektórych urządzeń, jest tylko dane, które masz.Your output from commands such as this, which return information directly from some hardware, is only as good as the data you have. Niektóre informacje nie została poprawnie skonfigurowana przez producentów sprzętu i dlatego mogą być niedostępne.Some information is not correctly configured by hardware manufacturers and may therefore be unavailable.

Lista zainstalowanych poprawekListing Installed Hotfixes

Wyświetl listę wszystkich zainstalowanych poprawek za pomocą Win32_QuickFixEngineering:You can list all installed hotfixes by using Win32_QuickFixEngineering:

Get-CimInstance -ClassName Win32_QuickFixEngineering -ComputerName .

Ta klasa zwraca listę poprawek, który wygląda następująco:This class returns a list of hotfixes that looks like this:

Source Description     HotFixID  InstalledBy   InstalledOn PSComputerName
------ -----------     --------  -----------   ----------- --------------
       Security Update KB4048951 Administrator 12/16/2017  .

Bardziej zwięzły danych wyjściowych można wykluczyć niektórych właściwości.For more succinct output, you may want to exclude some properties. Chociaż można używać Get-CimInstancew właściwości parametr, aby wybrać tylko HotFixID, to tak faktycznie zwrócą więcej informacji, ponieważ domyślnie powoduje wyświetlenie wszystkich metadanych:Although you can use the Get-CimInstance's Property parameter to choose only the HotFixID, doing so will actually return more information, because all the metadata is displayed by default:

Get-CimInstance -ClassName Win32_QuickFixEngineering -ComputerName . -Property HotFixID
PSShowComputerName    : True
InstalledOn           :
Caption               :
Description           :
InstallDate           :
Name                  :
Status                :
CSName                :
FixComments           :
HotFixID              : KB4048951
InstalledBy           :
ServicePackInEffect   :
PSComputerName        : .
CimClass              : root/cimv2:Win32_QuickFixEngineering
CimInstanceProperties : {Caption, Description, InstallDate, Name...}
CimSystemProperties   : Microsoft.Management.Infrastructure.CimSystemProperties

Dodatkowe dane są zwracane, ponieważ parametr właściwości w Get-CimInstance ogranicza właściwości zwrócony z wystąpień klasy usługi WMI, nie obiekt zwrócił do programu Windows PowerShell.The additional data is returned, because the Property parameter in Get-CimInstance restricts the properties returned from WMI class instances, not the object returned to Windows PowerShell. Aby ograniczyć dane wyjściowe, należy użyć Select-Object:To reduce the output, use Select-Object:

Get-CimInstance -ClassName Win32_QuickFixEngineering -ComputerName . -Property HotFixId | Select-Object -Property HotFixId
HotFixId
--------
KB4048951

Wyświetlanie informacji o wersji systemu operacyjnegoListing Operating System Version Information

Win32_OperatingSystem właściwości klasy zawierają informacje o pakiecie wersji i usługi.The Win32_OperatingSystem class properties include version and service pack information. Jawnie można wybrać tylko te właściwości, aby uzyskać informacje o wersji podsumowanie z Win32_OperatingSystem:You can explicitly select only these properties to get a version information summary from Win32_OperatingSystem:

Get-CimInstance -ClassName Win32_OperatingSystem -ComputerName . | Select-Object -Property BuildNumber,BuildType,OSType,ServicePackMajorVersion,ServicePackMinorVersion

Można również użyć symboli wieloznacznych z Select-Objectw właściwości parametru.You can also use wildcards with the Select-Object's Property parameter. Ponieważ wszystkie właściwości, począwszy od jednej kompilacji lub z dodatkiem Service Pack należy użyć w tym miejscu możemy to zmniejszyć do następującej postaci:Because all the properties beginning with either Build or ServicePack are important to use here, we can shorten this to the following form:

Get-CimInstance -ClassName Win32_OperatingSystem -ComputerName . | Select-Object -Property Build*,OSType,ServicePack*
BuildNumber             : 16299
BuildType               : Multiprocessor Free
OSType                  : 18
ServicePackMajorVersion : 0
ServicePackMinorVersion : 0

Wyświetlanie lokalnych użytkowników i właścicielaListing Local Users and Owner

Lokalne ogólne informacje o użytkowniku — liczba licencjonowanych użytkowników, bieżąca liczba użytkowników i nazwy właściciela — można znaleźć zestaw Win32_OperatingSystem właściwości klasy.Local general user information — number of licensed users, current number of users, and owner name — can be found with a selection of Win32_OperatingSystem class' properties. Możesz wybrać jawnie właściwości do wyświetlenia w następujący sposób:You can explicitly select the properties to display like this:

Get-CimInstance -ClassName Win32_OperatingSystem -ComputerName . | Select-Object -Property NumberOfLicensedUsers,NumberOfUsers,RegisteredUser

Jest bardziej zwięzły wersji przy użyciu symboli wieloznacznych:A more succinct version using wildcards is:

Get-CimInstance -ClassName Win32_OperatingSystem -ComputerName . | Select-Object -Property *user*

Pobieranie dostępnego miejsca na dyskuGetting Available Disk Space

Aby wyświetlić miejsca na dysku i wolnego miejsca na dyskach lokalnych, służy klasy Win32_LogicalDisk usługi WMI.To see the disk space and free space for local drives, you can use the Win32_LogicalDisk WMI class. Należy sprawdzić tylko wystąpienia o DriveType 3 — wartość używa usługi WMI stałe dyski twarde.You need to see only instances with a DriveType of 3 — the value WMI uses for fixed hard disks.

Get-CimInstance -ClassName Win32_LogicalDisk -Filter "DriveType=3" -ComputerName .

DeviceID DriveType ProviderName VolumeName Size         FreeSpace   PSComputerName
-------- --------- ------------ ---------- ----         ---------   --------------
C:       3                      Local Disk 203912880128 65541357568 .
Q:       3                      New Volume 122934034432 44298250240 .

Get-CimInstance -ClassName Win32_LogicalDisk -Filter "DriveType=3" -ComputerName . | Measure-Object -Property FreeSpace,Size -Sum | Select-Object -Property Property,Sum

Property           Sum
--------           ---
FreeSpace 109839607808
Size      326846914560

Trwa pobieranie informacji o sesji logowaniaGetting Logon Session Information

Można uzyskać ogólne informacje dotyczące sesji logowania skojarzone z użytkownikami za pomocą Win32_LogonSession klasy usługi WMI:You can get general information about logon sessions associated with users through the Win32_LogonSession WMI class:

Get-CimInstance -ClassName Win32_LogonSession -ComputerName .

Pobieranie użytkownika zalogowanego na komputerzeGetting the User Logged on to a Computer

Użytkownik zalogowany do określonego systemu komputerowego przy użyciu Win32_ComputerSystem można wyświetlić.You can display the user logged on to a particular computer system using Win32_ComputerSystem. To polecenie zwraca tylko użytkownika zalogowanego na pulpicie systemu:This command returns only the user logged on to the system desktop:

Get-CimInstance -ClassName Win32_ComputerSystem -Property UserName -ComputerName .

Pobieranie czasu lokalnego na komputerzeGetting Local Time from a Computer

Bieżący czas lokalny na określonym komputerze można pobrać za pomocą Win32_LocalTime klasy usługi WMI.You can retrieve the current local time on a specific computer by using the Win32_LocalTime WMI class.

Get-CimInstance -ClassName Win32_LocalTime -ComputerName .

Day          : 15
DayOfWeek    : 4
Hour         : 12
Milliseconds :
Minute       : 11
Month        : 6
Quarter      : 2
Second       : 52
WeekInMonth  : 3
Year         : 2017
PSComputerName : .

Wyświetlanie stanu usługiDisplaying Service Status

Aby wyświetlić stan wszystkich usług na określonym komputerze, lokalnie służy Get-Service polecenia cmdlet.To view the status of all services on a specific computer, you can locally use the Get-Service cmdlet. Dla systemów zdalnych, możesz użyć Win32_Service klasy usługi WMI.For remote systems, you can use the Win32_Service WMI class. Jeśli używasz również Select-Object mają być filtrowane wyniki do stan, nazwa, i DisplayName, format danych wyjściowych będzie niemal identyczne z Get-Service:If you also use Select-Object to filter the results to Status, Name, and DisplayName, the output format will be almost identical to that from Get-Service:

Get-CimInstance -ClassName Win32_Service -ComputerName . | Select-Object -Property Status,Name,DisplayName

Umożliwia wyświetlanie pełne nazwy okazjonalne usługi z bardzo długie nazwy, warto użyć Format-Table z AutoSize i zawijanie parametrów, aby zoptymalizować szerokość kolumny i Zezwalaj na długie nazwy opakowywać zamiast obcięcie:To allow the complete display of names for the occasional services with extremely long names, you may want to use Format-Table with the AutoSize and Wrap parameters, to optimize column width and allow long names to wrap instead of being truncated:

Get-CimInstance -ClassName Win32_Service -ComputerName . | Format-Table -Property Status,Name,DisplayName -AutoSize -Wrap