我想創建一個腳本來在Active Directory中通過它創建一個用戶。我已經創建了一個單線程,它可以正確創建用戶。但知道我希望腳本創建具有不同輸入的用戶。通過Powershellscript在Active Directory中創建一個用戶
我創建了代碼,但不知何故,它不工作,任何人都可以詳細說明我做錯了什麼?
$name=$args[0]
$givenname=$args[1]
$surname=$args[2]
$userlogin=$args[3]
$loginold=$args[4]
$description=$args[5]
$phone=$args[6]
$mail=$args[7]
$password=$args[8]
$passwordexpire=$args[9]
$locked=$args[10]
$oupath=$args[11]
echo $name
echo $givenname
echo $surname
echo $userlogin
echo $loginold
echo $description
echo $phone
echo $mail
echo $password
echo $passwordexpire
echo $locked
echo $oupath
New-ADUser -Name $name -GivenName $givenname -Surname $surname -UserPrincipalName $userlogin -SamAccountName $loginold -description $description -OfficePhone $phone -EmailAddress $mail -AccountPassword (Read-Host -AsSecureString "AccountPassword") $password -PasswordNeverExpires $passwordexpire -Enabled $locked -path $oupath
pause
錯誤消息:
New-ADUser : Cannot validate argument on parameter 'Name'. The argument is null or empty. Provide an argument that is not null or empty, and then try the command again.
At C:\POwershell\Create_ad_user.ps1:27 char:18
+ New-ADUser -Name $name -GivenName $givenname -Surname $surname -UserPrincipalNam ...
+ ~~~~~
+ CategoryInfo : InvalidData: (:) [New-ADUser], ParameterBindingValidationException
+ FullyQualifiedErrorId : ParameterArgumentValidationError,Microsoft.ActiveDirectory.Management.Commands.NewADUser
Press Enter to continue...:
PS C:\Users\Administrator\Desktop>
呢'回聲$ name'輸出什麼?另外,'-AccountPassword'看起來不正確。 – 4c74356b41
你能告訴我們你是如何從命令行調用腳本的嗎?還請看看[PowerShell參數](https://technet.microsoft.com/en-us/library/jj554301.aspx)他們使事情比使用'$ args'更容易 –