Description

This script displays all SharePoint site collection administrators within a given web application.  User is prompted for site url if none is given.

Script

PowerShell
Edit|Remove
########################################################### 
#SP_Display-SiteCollectionAdmins1.ps1 -URL <string> 
# 
#Author: Brian T. Jackett 
#Last Modified Date: Mar. 25, 2011 
# 
#Display all site collection admins for all site collections 
# within a web application. 
########################################################### 
 
[void][System.Reflection.Assembly]::LoadWithPartialName('Microsoft.SharePoint') 
 
#DECLARE VARIABLES 
[string]$siteUrl = $args[0] 
 
function GetMissingParameter 
{ 
  $script:siteUrl = Read-Host "Enter Site URL" 
} 
 
############ 
# MAIN 
############ 
 
#IF MISSING PARM FOR SITE URL, ASK FOR INPUT TO FILL 
if($args.length -eq 0) 
{ 
  GetMissingParameter 
} 
 
$rootSite = New-Object Microsoft.SharePoint.SPSite($siteUrl$spWebApp = $rootSite.WebApplication 
 
foreach($site in $spWebApp.Sites) 
{ 
    foreach($siteAdmin in $site.RootWeb.SiteAdministrators) 
    { 
        Write-Host "$($siteAdmin.ParentWeb.Url) - $($siteAdmin.DisplayName)" 
    } 
     
    $site.Dispose() 
} 
$rootSite.Dispose()