Búsqueda de sitios web

Recopilación de información sobre computadoras.


Este ejemplo solo se aplica a las plataformas Windows.

Los cmdlets del módulo CimCmdlets son los cmdlets más importantes para las tareas generales de administración del sistema. Todas las configuraciones críticas del subsistema se exponen a través de WMI. Además, WMI trata los datos como objetos que se encuentran en colecciones de uno o más elementos. Debido a que PowerShell también funciona con objetos y tiene una canalización que le permite tratar uno o varios objetos de la misma manera, el acceso WMI genérico le permite realizar algunas tareas avanzadas con muy poco trabajo.

Listado de configuraciones de escritorio

Comenzaremos con un comando que recopila información sobre los escritorios de la computadora local.

Get-CimInstance -ClassName Win32_Desktop

Esto devuelve información para todos los escritorios, ya sea que estén en uso o no.

Nota

La información devuelta por algunas clases WMI puede ser muy detallada y, a menudo, incluye metadatos sobre la clase WMI.

Debido a que la mayoría de estas propiedades de metadatos tienen nombres que comienzan con Cim, puede filtrar las propiedades usando Select-Object. Especifique el parámetro -ExcludeProperty con "Cim*" como valor. Por ejemplo:

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

Para filtrar los metadatos, utilice un operador de canalización (|) para enviar los resultados del comando Get-CimInstance a Select-Object -ExcludeProperty "CIM*".

Listado de información del BIOS

La clase WMI Win32_BIOS devuelve información bastante compacta y completa sobre el BIOS del sistema en la computadora local:

Get-CimInstance -ClassName Win32_BIOS

Listado de información del procesador

Puede recuperar información general del procesador utilizando la clase Win32_Processor de WMI, aunque probablemente desee filtrar la información:

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

Para obtener una cadena de descripción genérica de la familia de procesadores, simplemente puede devolver la propiedad SystemType:

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

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

Listado del fabricante y modelo de computadora

La información del modelo de computadora también está disponible en Win32_ComputerSystem. La salida estándar mostrada no necesitará ningún filtrado para proporcionar datos OEM:

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

El resultado de comandos como este, que devuelven información directamente desde algún hardware, es tan bueno como los datos que tiene. Parte de la información no está configurada correctamente por los fabricantes de hardware y, por lo tanto, es posible que no esté disponible.

Listado de revisiones instaladas

Puede enumerar todas las revisiones instaladas utilizando Win32_QuickFixEngineering:

Get-CimInstance -ClassName Win32_QuickFixEngineering

Esta clase devuelve una lista de revisiones similar a esta:

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

Para obtener resultados más concisos, es posible que desee excluir algunas propiedades. Aunque puede utilizar el parámetro Property de Get-CimInstance para elegir solo el HotFixID, al hacerlo, en realidad se devolverá más información, porque todos los Los metadatos se muestran de forma predeterminada:

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

Los datos adicionales se devuelven porque el parámetro Property en Get-CimInstance restringe las propiedades devueltas por las instancias de clase WMI, no el objeto devuelto a PowerShell. Para reducir la salida, utilice Select-Object:

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

Listado de información de la versión del sistema operativo

Las propiedades de la clase Win32_OperatingSystem incluyen información sobre la versión y el service pack. Puede seleccionar explícitamente solo estas propiedades para obtener un resumen de información de la versión de Win32_OperatingSystem:

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

También puede utilizar comodines con el parámetro Propiedad. Debido a que todas las propiedades que comienzan con Build o ServicePack son importantes para usar aquí, podemos acortarlo a la siguiente forma:

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

Listado de usuarios y propietarios locales

La información general sobre los usuarios locales se puede encontrar con una selección de propiedades de clase Win32_OperatingSystem. Puede seleccionar explícitamente las propiedades para que se muestren así:

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

Una versión más sucinta que utiliza comodines es:

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

Obtener espacio disponible en disco

Para ver el espacio en disco y el espacio libre para las unidades locales, puede utilizar la clase Win32_LogicalDisk. Solo necesita ver instancias con un DriveType de 3, el valor que WMI usa para discos duros fijos.

Get-CimInstance -ClassName Win32_LogicalDisk -Filter "DriveType=3"
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" |
    Measure-Object -Property FreeSpace,Size -Sum |
    Select-Object -Property Property,Sum
Property           Sum
--------           ---
FreeSpace 109839607808
Size      326846914560

Obtener información de la sesión de inicio de sesión

Puede obtener información general sobre las sesiones de inicio de sesión asociadas con los usuarios a través de la clase WMI Win32_LogonSession:

Get-CimInstance -ClassName Win32_LogonSession

Hacer que el usuario inicie sesión en una computadora

Puede mostrar el usuario que inició sesión en un sistema informático en particular utilizando Win32_ComputerSystem. Este comando devuelve solo el usuario que inició sesión en el escritorio del sistema:

Get-CimInstance -ClassName Win32_ComputerSystem -Property UserName

Obtener la hora local desde una computadora

Puede recuperar la hora local actual en una computadora específica usando la clase WMI Win32_LocalTime.

Get-CimInstance -ClassName Win32_LocalTime
Day            : 23
DayOfWeek      : 1
Hour           : 8
Milliseconds   :
Minute         : 52
Month          : 12
Quarter        : 4
Second         : 55
WeekInMonth    : 4
Year           : 2019
PSComputerName :

Mostrando el estado del servicio

Para ver el estado de todos los servicios en una computadora específica, puede usar localmente el cmdlet Get-Service. Para sistemas remotos, puede utilizar la clase WMI Win32_Service. Si también utiliza Select-Object para filtrar los resultados por Estado, Nombre y DisplayName, el formato de salida es casi idéntico al de Get-Service:

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

Para permitir la visualización completa de nombres para servicios con nombres largos, utilice los parámetros AutoSize y Wrap de Format-Table. Estos parámetros optimizan el ancho de la columna y permiten que los nombres largos se ajusten en lugar de truncarse:

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

Artículos relacionados