Get ComputerInfo - PowerShell


Overview

The Get-ComputerInfo command allows users to retrieve detailed information about a local or remote computer system. It is designed to provide a comprehensive overview of hardware, software, and system configuration settings, making it a valuable tool for system administrators, IT support, and users who need to understand the specifications and capabilities of their systems.

Syntax

Get-ComputerInfo [-ComputerName] <ComputerName> [-Property] <PropertyName> [-Filter] <Filter> [-Format] <Format> [-ErrorAction] <ErrorAction>

Options/Flags

  • -ComputerName: Specifies the name of the remote computer to gather information about. If omitted, information about the local computer is retrieved.
  • -Property: Specifies a specific property or set of properties to retrieve information about. Possible values include * (all properties), BIOS, BootConfiguration, CPU, Disk, Firewall, GPU, HotFix, Network, OS, PowerSupply, Printers, Process, Registry, Services, and WMI.
  • -Filter: Specifies a filter to narrow down the results. The syntax is the same as the Where-Object cmdlet.
  • -Format: Specifies the output format. Possible values include List (default), Table, Wide, and CSV.
  • -ErrorAction: Specifies the action to take when an error occurs. Possible values include Stop (default), Continue, SilentlyContinue, and Ignore.

Examples

  • Get general information about the local computer:
Get-ComputerInfo
  • Retrieve specific properties about the BIOS, CPU, and operating system:
Get-ComputerInfo -Property 'BIOS', 'CPU', 'OS'
  • Get a filtered list of all processes that are consuming more than 100 MB of memory:
Get-ComputerInfo -Property Process | Where {$_.WorkingSet -gt 100MB} | Format-Table -Property ProcessName, WorkingSet
  • Export a formatted table of all installed printers to a CSV file:
Get-ComputerInfo -Property Printers | Format-Table -Property Name, Description | Export-Csv -NoTypeInformation -Path C:\printers.csv

Common Issues

  • Access denied errors: If trying to retrieve information from a remote computer, ensure that you have sufficient permissions to access the system and run remote commands.
  • Blank output: If the specified property or filter does not match any information on the system, the output will be blank. Check the spelling and syntax of your commands.
  • Slow performance: Retrieving a large amount of information can slow down the command. Use filters and narrow down the properties to specific ones to improve performance.

Integration

Get-ComputerInfo can be combined with other PowerShell commands to perform advanced tasks. For example, you can use Export-Csv to export the results to a file, or ForEach-Object to iterate through the retrieved objects and perform specific actions on each one.