How to collect System Information using PowerShell

You don’t need to install 3rd party programs to get information about your computer system. With Windows PowerShell you can pull out all the system information you need.

What is PowerShell

PowerShell is a built-in scripting framework for Windows operating system. It is an advanced version of the old command prompt and is built on top of the .NET Common Language Runtime. If you are new to PowerShell you can check out my Windows PowerShell for newbies post. With PowerShell you can develop advanced script to automate IT tasks or you can use commands to pull out all kind of system information.

Basic PowerShell cmdlet to retrieve system-info

With PowerShell you have access to pull almost every information about your computer. You just need to put the right commands together. PowerShell has a lot of commands you can use to pull all kind of information out of your system. You can get the output directly on the screen or you can export it to a CSV file for further analyze. Let me show you a few examples on what you can do with PowerShell for Windows.

Get information about your motherboard

The command below can be used to pull information about your motherboard.

(Pull info about your motherboard)

Get-WmiObject win32_baseboard

(Pull information about your motherboard BIOS)

Get-WmiObject Win32_Bios

(Pull information about Memory blocks installed in your system)

Get-WmiObject win32_physicalmemory | Select Manufacturer,Banklabel,Configuredclockspeed,Devicelocator,Capacity,Serialnumber

Get information about operating-system 

With the command below you can get information about your operating system:

Get-ComputerInfo -Property “os*” | select OSName, OsArchitecture | fl

Combine all commands in one line

To make a one line command that combine all the above commands you can copy/paste the command below to your PowerShell prompt:

Get-WmiObject win32_baseboard; Get-WmiObject Win32_Bios; Get-WmiObject win32_physicalmemory | Select Manufacturer,Banklabel,Configuredclockspeed,Devicelocator,Capacity,Serialnumber; Get-ComputerInfo OSName, OsArchitecture

On my computer the result of the command looks like this:

Get data from EventLog

Another nice PowerShell command is the Get-EventLog that can be used to search the Eventlog for a specific error or warning. In the example below I search the System log for all entries with the Level Type “Error”:

Get-EventLog -LogName system -EntryType Error

The Sky is the Limit with PowerShell

When it comes to PowerShell only the sky is the limit. There is so many possibilities to combine commands and make scripts that makes everyday tasks simple and easy to do. I hope you found this post inspiring and that it makes you want to dig deeper into the power of PowerShell. For more PowerShell resources go to or maybe Tutorialspoint 

About the author:
I am an IT Professional that has this blog as a hobby project in my spare time. I have been in the IT business since 1996 and want to share some of the thing I have picked up over the years, with people who visit this blog.

>>Subscribe to my Newsletter<<

Related posts

2 Thoughts to “How to collect System Information using PowerShell”

  1. Tnx for the insight it was very helpful

    1. I am happy to hear that Thomas.

Leave a Comment