Hi i am trying to build a script for creating a new user in the AD<\/p>\n
#requires<\/span> -module ActiveDirectory and it gives this error<\/p>\n PS C:\\Users\\Administrator.SERVER.001> #requires<\/span> -module ActiveDirectory cmdlet at command pipeline position 1 i am not understanding please help me<\/p>","upvoteCount":5,"answerCount":14,"datePublished":"2020-09-29T14:58:12.000Z","author":{"@type":"Person","name":"spiceuser-gcxs1","url":"https://community.spiceworks.com/u/spiceuser-gcxs1"},"acceptedAnswer":{"@type":"Answer","text":"
\n[cmdletbinding()]
\nparam(
\n[parameter(mandatory)] [string]$firstname,
\n[parameter(mandatory)] [string]$lastname,
\n[parameter(mandatory)] [string]$department,
\n[parameter(mandatory)] [int]$employeenumber
\n)
\ntry {
\n$userName = ‘{0}{1}’ -f $FirstName.Substring(0, 1), $LastName
\n$i = 2
\nwhile ((Get-ADUser -Filter “samAccountName -eq ‘$userName’”) –and
\n($userName -notlike “$FirstName*”)) { Write-Warning -Message “The username
\n[$($userName)] already exists. Trying another…” $userName = ‘{0}{1}’ -f $FirstName.Substring(0, $i), $LastName Start-Sleep -Seconds 1 $i++
\n}
\nif (-not ($ou = Get-ADOrganizationalUnit -Filter “Name –eq ‘$Department’”))
\n{ throw “The Active Directory OU for department [$($Department)] could not
\nbe found.”
\n} elseif (-not (Get-ADGroup -Filter “Name -eq ‘$Department’”)) { throw “The
\ngroup [$($Department)] does not exist.”
\n}
\nAdd-Type -AssemblyName ‘System.Web’
\n$password = [System.Web.Security.Membership]::GeneratePassword( (Get-Random Minimum 20 -Maximum 32), 3)
\n$secPw = ConvertTo-SecureString -String $password -AsPlainText -Force
\n$newUserParams = @{
\nGivenname = $firstname;
\nEmployeenumber = $employeenumber;
\nSurname = $surname;
\nname = $userName;
\nAccountPassword = $secPw;
\nChangePasswordAtLogon = $true;
\nEnabled = $true;
\nDepartment = $department;
\npath = $ou.DistinguishedName;
\nconfirm = $false
\n}
\nNew-ADUser @newUserParams<\/span>
\nAdd-ADGroupMember -Identity $Department -Members $userName
\n} catch { Write-Error -Message $_.Exception.Message}<\/p>\n
\n[cmdletbinding()]
\nparam(
\n[parameter(mandatory)] [string]$firstname,
\n[parameter(mandatory)] [string]$lastname,
\n[parameter(mandatory)] [string]$department,
\n[parameter(mandatory)] [int]$employeenumber
\n)
\ntry {
\n$userName = ‘{0}{1}’ -f $FirstName.Substring(0, 1), $LastName
\n$i = 2
\nwhile ((Get-ADUser -Filter “samAccountName -eq ‘$userName’”) –and
\n($userName -notlike “$FirstName*”)) { Write-Warning -Message “The username
\n[$($userName)] already exists. Trying another…” $userName = ‘{0}{1}’ -f $FirstName.Substring(0, $i), $LastName Start-Sleep -Seconds 1 $i++
\n}
\nif (-not ($ou = Get-ADOrganizationalUnit -Filter “Name –eq ‘$Department’”))
\n{ throw “The Active Directory OU for department [$($Department)] could not
\nbe found.”
\n} elseif (-not (Get-ADGroup -Filter “Name -eq ‘$Department’”)) { throw “The
\ngroup [$($Department)] does not exist.”
\n}
\nAdd-Type -AssemblyName ‘System.Web’
\n$password = [System.Web.Security.Membership]::GeneratePassword( (Get-Random Minimum 20 -Maximum 32), 3)
\n$secPw = ConvertTo-SecureString -String $password -AsPlainText -Force
\n$newUserParams = @{
\nGivenname = $firstname;
\nEmployeenumber = $employeenumber;
\nSurname = $surname;
\nname = $userName;
\nAccountPassword = $secPw;
\nChangePasswordAtLogon = $true;
\nEnabled = $true;
\nDepartment = $department;
\npath = $ou.DistinguishedName;
\nconfirm = $false
\n}
\nNew-ADUser @newUserParams<\/span>
\nAdd-ADGroupMember -Identity $Department -Members $userName
\n} catch { Write-Error -Message $_.Exception.Message}<\/p>\n
\nSupply values for the following parameters:
\nfirstname: jaden
\nlastname: smith
\ndepartment: IT
\nemployeenumber: 1478
\nError parsing query: ‘Name –eq ‘IT’’ Error Message: 'Operator Not supported: ’
\nat position: ‘6’.<\/p>\n\n
[Write-Error], WriteErrorExcep
\ntion<\/li>\n
\nn<\/li>\n<\/ul>\n