param( [Parameter(Mandatory=$true)] [string]$url ) function Write-Log($msg) { Write-Host $msg -foregroundcolor green ($msg) | Out-File "log-remove-users.txt" -Append } function Remove-Users-Group($group) { Write-Log ("`t`t" + $group.Name) foreach ($user in $group.Users) { Write-Log ("`t`t`t" + $user.LoginName) $group.RemoveUser($user) } } function Remove-Users-Web($web) { Write-Log ("`t" + $web.Url) foreach ($g in $web.Groups) { Remove-Users-Group $g } foreach ($w in $web.Webs) { Remove-Users-Web $w } } function Remove-Users-Site-Col($site) { Write-Log $site.Url foreach ($w in $site.RootWeb.Webs) { Remove-Users-Web $w } } #$site = Get-SPSite $url #Remove-Users-Site-Col $site $web = Get-SPWeb $url Remove-Users-Web $web