In the advance in directory topologies over the years the use of batch or vbscript login scripts are slowly being phased out in favor of group policy based solutions which offer greater flexibility. Recently I had the need to purge the ScriptPath field from all users within an organization.
$myusers = Get-ADUser -Filter * -SearchBase "DC=liquidobject,DC=com" -properties ScriptPath | select-object SamAccountName,ScriptPath Write-Host $myusers.count " users loaded." foreach($user in $myusers) { if($user.ScriptPath.length -gt 0) { Write-Host "Cleaning: " $user.SAMAccountName #" - " $user.ScriptPath Set-ADUser -identity $user.SAMAccountName -ScriptPath $NULL Sleep 0.1 } else { # Write-Host "Already Clean: " $user.SAMAccountName } }