param( [Parameter(Mandatory=$true)] [string]$url ) function Write-Log($msg) { Write-Host $msg -foregroundcolor green #($msg) | Out-File "change-site-collection-admins.txt" -Append } $wa = Get-SPWebApplication $url foreach ($site in $wa.Sites) { Write-Log $site.Url try { Set-SPSite $site.Url -OwnerAlias "i:0#.w|howzee\alex" -SecondaryOwnerAlias "i:0#.w|howzee\admitriev" } catch { Write-Log "Retry..." Start-Sleep -Seconds 2 Set-SPSite $site.Url -OwnerAlias "i:0#.w|howzee\alex" -SecondaryOwnerAlias "i:0#.w|howzee\admitriev" } } #$site = Get-SPSite $url #Set-SPSite $site.Url -OwnerAlias "howzee\alex" -SecondaryOwnerAlias "howzee\admitriev"