AD SCRIPT: Change Users Department

This case study will change a users department

Build up on how the AD Script is to be dev: Explain: Func Mutation of func Calling

Update script in Github Account:

<#

Tasks:
    OU name when the script runs
    Department name when the script runs
    Display more info (Write-host/Read-Host)
    Try-Catch block to display error message (NICE version)
    Comment to assist on script

#>

$i=0
$sUser = $null
$Dep = $null
$readOU = Read-Host "Enter [OU] for query: "


#Enter OU name and search for it
#looping

Try{
    
$sUser = Get-ADUser -Filter * -SearchBase "OU=$readOU,DC=ChangeME,DC=ChangeMe" -ErrorAction Stop    
}
Catch
{
    Write-Host "*************** ***** ***** ***** ***"
    Write-Host "*************** ***** ***** ***** ***"
    Write-Host "*************** ***** ***** ***** ***"
    Write-Host "*************** ***** ***** ***** ***"
    Write-Host "*************** ***** ***** ***** ***"
    Write-Host "***OU Name is NOT Identified/ GET GOOD* ***"
    Write-Host "*************** ***** ***** ***** ***"
    Write-Host "*************** ***** ***** ***** ***"
    Write-Host "*************** ***** ***** ***** ***"
}

Write-Host $sUser.Count "Users are found"

Try
{

    if($sUser.count -gt 0)
    {
        $Dep = Read-Host "Enter Department Name Here: " 
        $Dep=$Dep.Trim()
        if($Dep -eq "")
        {
            Write-Host "****************"
            Write-Host "****************"
            Write-Host "*****Department name cannot be null***"
            Write-Host "****************"
            Write-Host "****************"
        }
    
            forEach ($user in $sUser)
            {
            Set-ADUser $user -Department $Dep
            $i++
            }
        Write-Host "*********###*#*#*#**#*#*#*#*#*#*#*"
        Write-Host "Script Executed"

    }

}
catch
{
Write-Host "****** ***** **** *** ***"
Write-Host "******* ***** *** *****"
Write-Host "***** *** **** *** *** **"
Write-Host "Department Search Failed Fix the issue"
}


write-host $i "Users are processed"


#Give existing 

#Get-Org Unit

Last updated