如何Check Web Application下哪些Site Collection的Site Feature是启用状态?

最近经常要部署带site Feature的solution update到Production的工作。我们都知道对于solution,需要在部署新的solution之前对当前环境进行备份检查。比如当前solution的备份,site Feature在哪些site上启用等。

 

下面就介绍如何通过script来check webApplication下哪些site Collection的site Feature是启用的。

命令行如下:

Add-PSSnapinMicrosoft.SharePoint.PowerShell

 

$webapp =Get-SPWebApplication -identity "web application url"

 

$AllSites= Get-SPSite -WebApplication$webapp -Limit All

 

foreach($sitein $AllSites)

{

$Allwebs = $Site.Allwebs

Foreach($web in Allwebs)

{$feature=Get-SPFeature -web $web | Where-object {$_.DisplayName -eq"site feature name"}

if($feature -ne $null)

{

Write-host "Feature Activated at" $site.URL

}

}

  }

执行完成后效果如下:

 如何Check Web Application下哪些Site Collection的Site Feature是启用状态?

记录方便之后使用,也share给大家。