我正在嘗試使用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