14

I am using powershell to automate configuring websites in my IIS. I have the following code that creates a web application pool for me

#Creating a new Application Pool
New-WebAppPool "NewAppPool"

But before creating the pool, I want to check whether pool exists or not.How do I go about doing this?

Please note : There is no IIS Drive on my system. And hence commands which have IIS mentioned in the path like the following fail :

$IISPath = "IIS:\AppPools"
cd $IISPath
if (Test-Path ".\NewAppPool") { Write-Host "NewAppPool exists." }
Shruti Agarwal
  • 887
  • 2
  • 14
  • 29

1 Answers1

32

Use this:

import-module webadministration

$AppPoolName="NewAppPool"

if(Test-Path IIS:\AppPools\$AppPoolName)
{
"AppPool is already there"
return $true;
}
else
{
"AppPool is not present"
"Creating new AppPool"
New-WebAppPool "$AppPoolName" -Force
return $false;
}

Note: You need the WebAdministration module for Powershell. After importing you can use it. See the other ANSWER where I have mentioned about IIS drive

Ala Eddine JEBALI
  • 7,033
  • 6
  • 46
  • 65
Ranadip Dutta
  • 8,857
  • 3
  • 29
  • 45