我使用以下命令创建 15 个用户帐户:
FOR /L %i in (1,1,15) DO dsadd user "cn=Grade 6 Student %i,ou=Accounts Student,OU=School Name, dc=curric,dc=schoolname,dc=wan" -samid g6%i -upn g6%[email protected] -fn "Grade 6" -ln "Student %i" -display "Grade 6 Student %i" -pwd 1234 -disabled no
而且效果很好。我在最后添加了以下内容,以尝试提供用户的主驱动器设置:
-hmdrv H: -hmdir "\\servername\2013 Students\%username%"
这很好地填写了 ADUC 用户配置文件选项卡中的主文件夹字段,但替换了%username%
我的登录帐户名(我运行命令时登录的帐户名dsadd
),而不是我创建的用户帐户名。
有什么方法可以让我将主文件夹命名为创建的用户帐户名而不是用于运行命令的帐户名dsadd
?
答案1
是的,%username% 在命令行中被解释为您的用户帐户,即当前正在执行命令的用户帐户。请尝试改用 $username$。此外,我认为 dsadd 可能仍然存在错误,在这种情况下,您应该能够通过使用 dsadd 创建用户,然后使用 dsmod 设置主目录来解决此问题。
由于您使用的是 2008 R2,我个人建议以后使用 Powershell(以及 MS Active Directory cmdlet)。微软正在倾注方式现在,人们对 Powershell 的投入比对老旧的 dsadd.exe 的投入要多。
对此的评论微软页面确实暗示我 dsadd 仍然有问题。其他人遇到的问题和你一模一样。
答案2
您希望使用与 相同的逻辑-samid g6%i
。因此结果将是-hmdrv H: -hmdir "\\servername\2013 Students\g6%i"
,与任何其他for
循环变量没有区别。
@ryanrias 说得对,您确实希望使用 PowerShell 和New-ADUser
cmdlet 来完成此类任务。它将改变您的生活,它真的很棒。