Get list of machines by OS type from Active Directory

The old method of doing this is below. Here’s how you can get the same result using Powershell:

Get-ADComputer -Filter {OperatingSystem -like "*Server*"} -Properties OperatingSystem

Refining the output a little bit:

Get-ADComputer -Filter {OperatingSystem -like "*Server*"} -Properties OperatingSystem | Select Name,OperatingSystem | Sort Name,OperatingSystem

Grouping results up by OperatingSystem (Gives you a nice list of the how many of each operating system type you have in AD):

Get-ADComputer -Filter {OperatingSystem -like "*Server*"} -Properties OperatingSystem | Group-Object OperatingSystem | Sort OperatingSystem

Here is an easy way of getting a list of computers that have a particular OS type from Active Directory using DSQuery.

dsquery * domainroot -filter "(&(objectCategory=computer)(operatingSystem=Windows XP*))"

The command above would give you a list of all computers that have a Windows XP operating system. For Windows Servers, change the command as follows:

dsquery * domainroot -filter "(&(objectCategory=computer)(operatingSystem=Windows Server*))"

The output of the commands above would look something like this:

dsget succeeded

Note the ‘samid’ at the head and ‘dsget succeeded’ at the end and the ‘$’ at the end tail of every server name. If you are like me, and you would like just get a nice clean output with only server names, you can run this command:

for /f "Tokens=1 delims=$" %a in ('dsquery * domainroot -filter "(&(objectCategory=computer)(operatingSystem=Windows Server*))"^| dsget computer -samid^|find /V "samid" ^| find /V "dsget"') do echo %a

The output of the command shown above would be:



Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.

%d bloggers like this: