Home ยป PowerShell ยป PowerShell List Application Pools

PowerShell List Application Pools

In Web Server Management, listing IIS application pools is an important administrative task. Listing application pools allows administrators to monitor resource allocation and maintenance. PowerShell has an IISAdministration module that provides cmdlets to manage website and application pools.

The `Get-IISAppPool` cmdlet in PowerShell is used to list application pools including their information about app pool name, status, CLR ver, Pipeline Mode, and Start Mode.

The following command gets a list of application pools.


You can also use IIS:\AppPool with the Get-ChildItem cmdlet to get a list of IIS application pools.

In this article, we will discuss how to use the PowerShell Get-IISAppPool command to list IIS application pools and get information about the specific application pool.

How to List Application Pools

To list IIS application pools, use the Get-IISAppPool command. This command gets the configuration information for IIS application pools.


In the above PowerShell script, the Get-IISAppPool cmdlet gets a list of application pools including their configuration information.

The configuration information for an IIS application pool includes:

  • Name: It specifies the name of an application pool
  • Status: It specifies the state of an application pool. The value can be either Started or Stopped.
  • CLR Ver: It specifies the .NET CLR version.
  • Pipeline Mode: It represents the managed pipeline mode. It can be either integrated or classic.
  • Start Mode: It specifies the star mode for an application pool.

The output of the above PowerShell script after listing all IIS application pools is given below.

PowerShell List IIS Application Pools
PowerShell List IIS Application Pools

Use IIS:\AppPools to Get IIS Application Pools

You can get IIS application pools using the IIS PSDrive iis:AppPools. It requires a PowerShell WebAdministration or IISAdministration module installed on the system.

Use the following command to import the WebAdministration module.

Import-Module WebAdministration -Verbose

The following command gets the application pools.

Get-ChildItem IIS:\AppPools\

In the above PowerShell script, the Get-ChildItem command uses the IIS PSDrive, in this case, โ€œIIS:\AppPoolsโ€ and gets the list of application pools in the IIS server.

The output of the above PowerShell script is given below.

PS C:\> Get-ChildItem IIS:\AppPools\                                                                                    
Name                     State        Applications
----                     -----        ------------
.NET v2.0                Started
.NET v2.0 Classic        Started
.NET v4.5                Started      /USMCBMService
.NET v4.5 Classic        Started
Classic .NET AppPool     Started
DefaultAppPool           Started      Default Web Site
HMI                      Stopped      HMI
HMITest                  Started      HMITest
PowerShellGeek           Started


I hope the above article on how to list application pools using the Get-IISAppPool cmdlet and IIS:\AppPool PSDrive in PowerShell is helpful to you.

The Get-IISAppPool command is available in the IISAdministration module.

To use IIS:\AppPool, you will need to use the WebAdministration module.

You can find more topics about PowerShell Active Directory commands and PowerShell basics on the ShellGeek home page.

Related Articles

Check IIS Status

Start IIS App pool

Stop IIS App Pool

Get All IIS Site Bindings