【发布时间】:2019-03-14 14:45:24
【问题描述】:
我目前在下面得到了代码,但是我在 $userpass 变量上返回了 $null。我检查了 CSV 文件,应该都是正确的。
Import-Module activedirectory
#Dit deel van het script is voor het verzamelen van informatie die in de commands gestopt wordt.
$csvpad = Read-Host -Prompt 'Geef het pad naar het CSV bestand op (zonder bestandsnaam)
ZONDER backslash, bijvoorbeeld: D:\Gebruikers mappen'
$csvbestand = Read-Host -Prompt 'Geef het CSV bestandsnaam op'
#Voor het opslaan van de data uit het opgegeven .CSV bestand in de $users variable
Write-Host "CSV bestand importeren!"
$users = Import-Csv -Path "$csvpad\$csvbestand"
#Loop om door elke rij in het CSV bestand te gaan.
Foreach ($user in $users)
{
#Leest de data van elk veld in elke rij en geeft de juiste data aan de juiste variable.
$displayname = $user.Voornaam + " " + $user.Achternaam
$userfirstname = $user.Voornaam
$userlastname = $user.Achternaam
$username = $user.Gebruikersnaam
$usermail = $user.Voornaam + "." + $user.Achternaam + "@" + $user.Domein
$ou = $user.OU
$userpass = $user.Wachtwoord
#Als de user niet in AD bestaat gaat deze door met het maken van een nieuwe account.
New-ADUser -Name "$displayname" -DisplayName "$displayname" -GivenName "$userfirstname" -Surname "$userlastname" -Enabled $true -SamAccountName "$username" -EmailAddress "$usermail" -Path "$ou" -AccountPassword (ConvertTo-SecureString $userpass -AsPlainText -Force) -ChangePasswordAtLogon $true -PasswordNeverExpires $true
}
Write-Host "Users uit het CSV bestand zijn aangemaakt!"
这是我正在使用的 CSV(数据是随机的,因为它只是学校的一个学习项目)。
Voornaam;Achternaam;Domein;Gebruikersnaam;Wachtwoord;OU;Berekening usernames
Test;Account1;01testict.nl;Te.Account1;P@ssw0rd;OU=Users,DC=01testict,DC=nl;Te
Testing;Account2;01testict.nl;Te.Account2;P@ssw0rd;OU=Users,DC=01testict,DC=nl;Te
Test123;Account3;01testict.nl;Te.Account3;P@ssw0rd;OU=Users,DC=01testict,DC=nl;Te
Test971;Account4;01testict.nl;Te.Account4;P@ssw0rd;OU=Users,DC=01testict,DC=nl;Te
Test652;Account5;01testict.nl;Te.Account5;P@ssw0rd;OU=Users,DC=01testict,DC=nl;Te
有什么想法吗?
【问题讨论】:
-
举例说明您的 CSV 文件的外观。使用随机(非实际)数据
-
您能展示您的 CSV 样本吗?此外,当您在循环结束时调用
ConvertTo-SecureString时,您在$userpass和-AsPlainText参数之间缺少一个空格。 -
您的 csv 是否有一个名为
Wachtwoord的列?该列名称中是否有空格? -
您好,感谢您的回复,我已上传用于测试脚本的 CSV。数据与我在脚本中使用的数据完全相同,因为这只是学校的学习作业,我似乎无法弄清楚。
-
@BACON 谢谢,在发布几分钟后我确实看到了,我已经更改了它,但不幸的是这并不能解决我的问题,我使用的 CSV 可以在主帖中找到或在此链接:i.stack.imgur.com/Jrfau.png
标签: powershell csv properties null import-csv