新 ADuser语言 - 参数其他属性



我正在为我工作的公司开发一个新ADuser脚本。 我已经设置了下面的哈希表,其中的值"序列号"的设置与否取决于新用户的要求。

$hashtable = @{
Name = $User.Surname + " " + $User.Givenname
Surname = $User.Surname
Givenname = $User.Givenname
Samaccountname = $User.Samaccountname
Emailaddress = $User.Emailaddress
Accountpassword = $User.password | ConvertTo-SecureString -AsPlainText -Force
Path = $User.Path
UserPrincipalName = $User.Samaccountname + "@anything.com"
OtherAttributes = @{serialNumber =$User.serialnumber}
}

我正在使用CSV文件来获取所有信息,但是如果未填写"序列号"字段,则我无法使脚本正常工作。 它错误类似于"参数为 Null 或空"。

有没有办法绕过这个问题?

谢谢。

$serialNum = ""
$Props = @{
Name = "testmay14_2"
Surname = "may14_2"
GivenName = "test"
SamaccountName = "testmay14_2" 
EmailAddress = "testmay14_2@domain.com"
Accountpassword = "Password!1" |ConvertTo-SecureString -AsPlainText -Force
UserPrincipalName = "testmay14_2@domain.com"
OtherAttributes = if(!([string]::IsNullOrEmpty($serialNum))){@{serialNumber = $serialNum}}else {@{serialNumber = 'NA'}}
}
New-ADUser @Props

也许你根本没有触摸"else"块中的序列号属性,而是使用了一些其他未使用的属性......只是一个想法

OtherAttributes = if(!([string]::IsNullOrEmpty($serialNum))){@{serialNumber = $serialNum}}else {@{Title="TheOneWithoutSerialNumber"}}

最新更新