我正在尝试使用csv文件在活动目录中创建帐户的脚本。不幸的是,我是通用的PowerShell和脚本编程的新手,并且面临着难以管理一个foreach()循环的问题,该循环旨在处理导入的csv文档中的每个列。Powershell Foreach的用法和语法
我怀疑我不能在foreach()之后的一个块中定义我的变量,但我不确定,并且希望得到一些指导。具体而言,代码的目的是读取一个csv文档,并将每个项目分配给一个变量,然后使用该变量创建具有这些值的服务帐户。
理想的情况是我可以用几百行创建csv,执行脚本并以几百个匹配的服务帐户结束。
$SVC = (import-csv C:\users\me\desktop\Test.csv -header("Name", "Pass", "WhatDo", "Location", "Domain")) `
foreach($variable in %SVC) {
$name = $SVC.Name
$Pass = $SVC.Pass
$WhatDo = $SVC.WhatDo
$Location = $SVC.Location
$Domain = $SVC.Domain
New-ADuser `
-Name $name `
-AccountPassword (Convertto-SecureString $Pass -AsPlainText -Force) `
-CannotChangePassword $true `
-Description $WhatDo `
-DisplayName $name `
-Enabled $true `
-GivenName $name `
-PasswordNeverExpires $True `
-Office $Location `
-Path "OU=Service-Accounts, Ou=Accunts, OU=_CORP, DC=$Domain, DC=net" `
-SamAccountName $name `
-UserPrincipleName $name + "@" + $domain + ".net" `
Start-Sleep -Seconds 15
Get-ADUser `
-Identity $name | Add-ADPrincipalGroupMembership `
-MemberOf "Group1","Group2","Group3"
}
请描述您遇到的问题 - 否则您的问题可能会面临关闭:寻求调试帮助的问题(“为什么不是这个代码工作?”)必须包含所需的行为,特定的问题或错误以及在问题本身中重现它所需的最短代码。没有明确问题陈述的问题对其他读者无益。请参阅:[如何创建最小的,可验证的示例](https://stackoverflow.com/help/mcve)。祝你好运! – theFunkyEngineer
'foreach($ item in $ SVC)' - 但是有许多许多在线exmaples用于从csv,excel,txt等创建AD用户... – Clijsters