Date and Month display

Site Collection administrators report across Farm Level

#--------------------------------------------------------------------------------------------------------------------------------------------
# Author: Shiv Mangal Singh
# Date: April 26, 2015
# Description: This script is used to get all Site Collection administrators report across Farm Level
# Syntax $WebSite --> WebSite Name | $FileUrl--> CSV file location
# e.g: .\Get_DocumentLibraryVersionReport_WebSite_Level.ps1
#--------------------------------------------------------------------------------------------------------------------------------------------
# Add SharePoint cmdlets reference
Add-PSSnapin microsoft.sharepoint.powershell -ErrorAction SilentlyContinue

$farm = [Microsoft.SharePoint.Administration.SPFarm]::Local
$websvcs = $farm.Services | where -FilterScript {$_.GetType() -eq [Microsoft.SharePoint.Administration.SPWebService]}
foreach ($websvc in $websvcs)
{
foreach ($webapp in $websvc.WebApplications)
 {
Write-Output $csvpath

Write-Host "Testing---Web Application Name:" $webapp.Name

$path = "D:\AuditData\"+$webapp.Name+".csv"
$csv = "SiteCollection,Site Collection Administrator,`r`n"
$fso = new-object -comobject scripting.filesystemobject
$file = $fso.CreateTextFile($path,$true)
$file.write($csv)
foreach($site in $webapp.Sites)
{

$siteurl=$site.Url
Write-Output $siteurl
$siteadministrator=$site.RootWeb.SiteAdministrators
Write-Output $siteadministrator
foreach($siteadmin in $site.RootWeb.SiteAdministrators )
{
Write-Output $siteadmin

$csv =$siteurl+","+$siteadmin+"`n";
$file.write($csv)
}
}
}
}
$file.close()
 
Write-Host "Work is finished"

1 comment: