Я, возможно, просто делаю это идиотским образом, но я пытаюсь вызвать переменную, которая находится вне цикла for с именем $ CSV, которая является импортированным файлом CSV.
Я думаю, что у меня неверный синтаксис.Я знаю, когда вы ссылаетесь на переменную снаружи, иногда нужно ссылаться на переменную как $ Name или $ .Name в зависимости.Но ни один из тех, кажется, не работает.
Write-Host "Start Process"
$E3Stage2= New-MsolLicenseOptions -AccountSkuId EnvistaForensics:ENTERPRISEPACK -DisabledPlans BPOS_S_TODO_2, FORMS_PLAN_E3, STREAM_O365_E3, Deskless, FLOW_O365_P2, POWERAPPS_O365_P2, TEAMS1, PROJECTWORKMANAGEMENT, SWAY, INTUNE_O365, YAMMER_ENTERPRISE, MCOSTANDARD
$CSV = Import-csv "Input.csv"
$CSVStat = $CSV | Measure-Object
For ( $i=0; $i -lt $CSVStat.Count; $i++) {
Write-Host "Assigning License for user ---- $CSV.EmailAddress[$i]"
Set-MsolUserLicense -UserPrincipalName $CSV.EmailAddress[$i] -LicenseOptions $E3Stage2
}
Write-Progress "waiting six minutes" -Status "Please Wait"
Start-Sleep 360
For ( $i=0; $i -lt $CSVStat.Count; $i++) {
Write-Host "enabling litigation hold for user ---- $CSV.EmailAddress[$i]"
Set-Mailbox -identity $CSV.EmailAddress[$i] -LitigationHoldEnabled $true
}
Write-Host "Final User done script completed"
в цикле for он не может найти $ CSV и вывести ошибку.