Originally published at: http://www.howtogeek.com/165293/how-to-get-a-list-of-software-installed-on-your-pc-with-a-single-command/
Suppose someone asks you for a list of applications you have installed on your computer, what’s the first thing you would think? Third-party program? Not us, we have PowerShell.
The first thing I would think is: What program will list ALL my applications, not just the Microsoft applications?
Many programs that search computer applications, never look beyond MS and/or other big-name applications, or they only look in the Program Files folder. I couldn't help but notice that, in your example, the whole list consists of MS programs. There is no mention of where and how Power Shell searches - unless I missed it - so I wonder if the app only concerns itself with certain programs and locations.
This works for any software installed on your PC, no matter the vendor, and two of the screenshots in the article show software that is non-Microsoft.
You should just try it for yourself... after all, it's a single line of PowerShell that you can copy into a shell. Easy.
- So, I DID miss it. Thanks for the reply.
This works swell at the command line. Could it be used in a batch file, and, if so, what might the syntax be?
I get this:
C:>Get-WmiObject -Class Win32_Product | Select-Object -Property Na
'Get-WmiObject' is not recognized as an internal or external command,
operable program or batch file.
Do i need to install soemthing before firing this query?
That is what I get also. Hopefully someone has an answer
I get the same error. I think something is missing or not quite right.
This needs to be done in powershell NOT command prompt(start > type 'Windows Powershell or run the command 'powershell.' If you have windows vista+ this will already be installed. If you have XP, you'll have to make sure you've installed powershell.
Although I get the point I would still prefer Belarc Advisor, which among other things, gives all software installed including the product keys! I take a Belarc of every computer I work on. It simply tells me a complete description of the whole computer Hadware, Software, Updates, the works.
I cannot speak for the others, but I am running this command in powershell, and it works as it should. However if I create a batch file to run the command (in powershell) it produces the result that sachin03oct outlined above.
Works for me, just make sure you create the C:\ directory first and use the caps and lower as its printed.
@phasr save the file as .ps1 rather than .bat. .bat files will run at the command shell ps1 files will run in Powershell. Hope that helps you!
If using this command from the command line or a batch file the pipe | operator must be escaped with ^ to prevent it from being parsed by the regular command line parser before being read by the powershell parser.
PowerShell Get-WmiObject -Class Win32_Product ^| Select-Object -Property Name
No problem with Geek original posting !!
Microsoft Office Sounds
Intel Processor Diagnostic Tool 64Bit
Windows 7 USB/DVD Download Tool
Microsoft Office OneNote MUI (English) 2010
Microsoft Office InfoPath MUI (English) 2010
Microsoft Office Access MUI (English) 2010
Microsoft Office Shared Setup Metadata MUI (English) 2010
Microsoft Office Excel MUI (English) 2010
Microsoft Office Shared 64-bit Setup Metadata MUI (English) 2010
Microsoft Office Access Setup Metadata MUI (English) 2010
Microsoft Office PowerPoint MUI (English) 2010
Microsoft Office Publisher MUI (English) 2010
Microsoft Office Outlook MUI (English) 2010
Microsoft Office Office 64-bit Components 2010
Microsoft Office Shared 64-bit MUI (English) 2010
Microsoft Office Groove MUI (English) 2010
Microsoft Office Word MUI (English) 2010
Microsoft Office Proofing (English) 2010
Microsoft Office Shared MUI (English) 2010
Microsoft Office Proof (English) 2010
Microsoft Office Proof (Spanish) 2010
Microsoft Office Proof (French) 2010
Microsoft Office Professional Plus 2010
TurboTax 2012 wtniper
Microsoft Visual C++ 2010 x64 Redistributable - 10.0.40219
Microsoft Visual C++ 2005 Redistributable (x64)
Microsoft Visual C++ 2010 x86 Redistributable - 10.0.40219
Microsoft Security Client
WIDCOMM Bluetooth Software
Java 7 Update 21
Java(TM) 6 Update 21 (64-bit)
Java 7 Update 21 (64-bit)
Cisco PEAP Module
Asmedia ASM106x SATA Host Controller Driver
TurboTax 2012 WinPerTaxSupport
Microsoft Visual C++ 2008 Redistributable - x64 9.0.30729.6161
Adobe Reader XI (11.0.03)
TurboTax 2012 WinPerReleaseEngine
Cisco LEAP Module
TurboTax 2012 wrapper
Cisco EAP-FAST Module
Microsoft Visual C++ 2005 Redistributable (x64)
Asmedia ASM104x USB 3.0 Host Controller Driver
HP Photosmart 5520 series Basic Device Software
Broadcom InConcert Maestro
System Requirements Lab for Intel
Microsoft .NET Framework 4 Extended
Microsoft .NET Framework 4 Client Profile
TurboTax 2012 WinPerFedFormset
Microsoft Visual C++ 2008 Redistributable - x64 9.0.30729.17
Java Auto Updater
I get the list as shown in the article, but when I try the code for exporting the information in a text file, I get all sorts of error messages. I have re-typed -- MANY TIMES -- the entire line as shown in the article but still don't get it to work. Is there something missing from the code line that ends with "> C:\ ...."?
Ahhh, yes! Now that was the answer I was seeking. Works great....and, thank you!!
There are two problems with PowerShell. First, it is too rich. Just knowing you can do the above requires a steep and long learning curve as well as a phenomenal memory. Second, there is no Mac version.
By the word (rich), you mean Requires Study.
Yes like any language or script or syntax, it does Require one to Learn.
A computing device is not just an instrument for entertainment only.
Using PowerShell I did this; PS C:\Users\xxxxx> Get-WmiObject -Class Win32_Product | Select-Object -Property Name > C:\Listy.txt xxxxx being the name of the computer.
But first created a .txt file named Listy in C:\ (or any location you want). Command failed without doing this.
next page →