-1

我正在尝试使用PowerShell创建使用以下脚本的批量用户,但是我收到了以下所述的错误。请帮忙!AD中的批量用户

脚本:

Import-Module ActiveDirectory 
Import-Csv "C:\Scripts\bulkadusers.csv" | ForEach-Object { 
$userPrincinpal = $_."samAccountName" + "@sigusa.net" 
New-ADUser -Name $_.Name ` 
-Path $_."ParentOU" ` 
-SamAccountName $_."samAccountName" ` 
-UserPrincipalName $userPrincinpal ` 
-AccountPassword (ConvertTo-SecureString "1234" -AsPlainText -Force) ` 
-ChangePasswordAtLogon $false ` 
-Enabled $true 
Add-ADGroupMember "Domain Admins" $_."samAccountName"; 
} 

错误:

New-ADUser : Directory object not found
At C:\scripts\bulkADusers.ps1:4 char:11
+ New-ADUser <<<< -Name $.Name + CategoryInfo : ObjectNotFound: (CN=Johnsontest,...C=sigusa,DC=net:String) [New-ADUser], ADIdentityNotFoundException
+ FullyQualifiedErrorId : Directory object not found, Microsoft.ActiveDirectory.Management.Commands.NewADUser
Add-ADGroupMember : Cannot find an object with identity: 'j.test' under: 'DC=sigusa,DC=net'. At C:\scripts\bulkADusers.ps1:11 char:18
+ Add-ADGroupMember <<<< "Domain Admins" $
."samAccountName";
+ CategoryInfo : ObjectNotFound: (j.test:ADPrincipal) [Add-ADGroupMember], ADIdentityNotFoundException
+ FullyQualifiedErrorId : SetADGroupMember.ValidateMembersParameter,Microsoft.ActiveDirectory.Management.Commands. AddADGroupMember

回答

0

您使用$.这是$_

未经测试的固定码:

Import-Module ActiveDirectory 
Import-Csv "C:\Scripts\bulkadusers.csv" | ForEach-Object { $userPrincinpal = $_."samAccountName" + "@sigusa.net" 
New-ADUser -Name $_.Name -Path $_."ParentOU" -SamAccountName $_."samAccountName" -UserPrincipalName $userPrincinpal -AccountPassword (ConvertTo-SecureString "1234" -AsPlainText -Force) -ChangePasswordAtLogon $false -Enabled $true 
Add-ADGroupMember "Domain Admins" $_."samAccountName"; } 
+0

确定工作,但现在它给了我一个新的错误 新的ADUser:一个位置参数找不到接受参数'Add-ADGroupMember'。 在C:\ scripts \ bulkADusers.ps1:3 char:1 + New-ADUser -Name $ _。Name -Path $ _。“ParentOU”-SamAccountName $ _。“samAccountName ... + ~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~ CategoryInfo:InvalidArgument:(:) [New-ADUser],ParameterBindingException + FullyQualifiedErrorId:PositionalParameterNotFound,Microsoft。 ActiveDirectory.Management.Commands.NewADUser – 2014-12-06 18:24:09

+0

是的,'Add-ADGroupMember'需要在一个新行上,在答案中修复 – 2014-12-06 18:26:37

0

我这样做是使用CSV与数据文件,然后在Excel中使用串连放在一起的字符串创建与我有For /F使用一个特定的符每个用户命令来读取传递给dsadd user命令的input.txt。如果powershell由于例如限制而不可用,我将其作为解决方法发布。