Het verwijderen van usershares behoort tot een correcte offboarding procedure. In de praktijk wordt een dergelijke share vaak nog even bewaard. Joseph Moody heeft een mooi powershell script gemaakt, waarbij je eerst een “dry-run” kunt doen en een complete lijst krijgt van mappen die verwijderd gaan worden.
Het is enkel nodig de lokatie op te geven van het usershare pad, plus eventuele uitzonderingen.
#This should point to the root of a home folder/FR share. Subfolders in this folder match AD account usernames. $Folders = get-childitem E:\shares $NamesToIgnore = "jmoody" $FoldersToBeRemoved = @() foreach ($Folder in $Folders){ $Username = $Folder.Name if ($NamesToIgnore -notcontains $Username){ $UsernameCheck = Get-ADUser -Identity $Username -Properties * -ErrorAction SilentlyContinue if ($? -eq $false -and $Username -notlike $NamesToIgnore){ $FoldersInformation = @{"Folder Name"=$Username;"Folder Path"=$Folder.FullName;"Last Write Time"=$Folder.LastWriteTime} $FoldersToBeRemoved += New-Object -TypeName psobject -Property $FoldersInformation Write-Host $Username pause ## put a hashtag in front of the -WhatIf to actually do something Remove-Item $Folder.FullName -Recurse -Force -Verbose -WhatIf } } } $FoldersToBeRemoved | Out-GridView
Wanneer je het script draait met daar in “Remove-Item $Folder.FullName -Recurse -Force -Verbose -WhatIf” zul je enkel een melding krijgen van wat potentieel verwijderd gaat worden. Zet je een # voor de -whatif, zal er wel degelijk iets verwijderd worden.