What Powershell Command Will Show You Available Roles And Features

How To Articles

I’ve been using PowerShell for quite some time now, and I must say, it has become an indispensable tool in my daily work as a system administrator. One of the tasks that I frequently need to perform is checking the available roles and features on a Windows server. In this article, I’ll show you the PowerShell command that I use to quickly get this information.

Before we dive into the command, let’s talk a bit about roles and features. In the Windows Server operating system, roles and features are software components that provide specific functionality to the server. Roles are typically used to define the primary function of the server, such as a domain controller or a web server. Features, on the other hand, are optional components that can be installed or removed based on the server’s requirements.

Now, let’s get to the PowerShell command that will give us the available roles and features. The command we need is Get-WindowsFeature. This command is available in Windows Server 2008 and later versions. To get the available roles and features on the local server, simply open a PowerShell console and run the following command:


This command will provide you with a list of all the roles and features that are installed or available to be installed on the server. You’ll see the name, display name, and the installation state of each role or feature.

But what if you want to check the roles and features on a remote server? Well, PowerShell has got you covered. To check the available roles and features on a remote server, you need to use the -ComputerName parameter. Here’s an example:

Get-WindowsFeature -ComputerName "RemoteServer"

Replace “RemoteServer” with the actual name or IP address of the remote server you want to check. This command will retrieve the roles and features information from the specified remote server.

Now, let’s say you want to filter the list of roles and features based on a specific criteria, such as installed features only. PowerShell allows you to do that by using the Where-Object cmdlet. Here’s an example:

Get-WindowsFeature | Where-Object { $_.Installed }

This command will give you a list of only the installed roles and features on the local server. You can modify the filter criteria to suit your needs.

So, there you have it. The Get-WindowsFeature command in PowerShell is a powerful tool that allows you to quickly check the available roles and features on a Windows server. Whether you’re managing a single server or a whole fleet of servers, this command will save you time and effort.


In conclusion, PowerShell provides us with a simple and efficient way to retrieve information about the available roles and features on a Windows server. The Get-WindowsFeature command gives us a comprehensive list of all the installed or available roles and features, and we can even filter the list based on specific criteria. So, if you’re a system administrator like me, make sure to add this command to your arsenal of PowerShell tools.