[英]Foreach loop to get department name in powershell office365
我正在尝试从 UserPrincipalNames 列表中获取部门
我能够让它在 foreach 循环之外为单个用户工作。 它在我遇到麻烦的地方添加了循环。
Connect-MsolService
$users = Import-Csv C:\Users\me\Desktop\users.csv
foreach ($user in $users){
Get-MsolUser -UserPrincipalName $user | Select-Object firstname, lastname, UserPrincipalName, department |Export-Csv C:\Users\me\Desktop\test.csv
}
CSV 中列出了 50 个电子邮件地址,每行一个电子邮件地址。 第一行是“UserPrincipalName”
CSV 示例数据
userprincipalname
useremail1@mydomain.com
useremail2@mydomain.com
useremail3@mydomain.com
useremail4@mydomain.com
想想 PowerShell - 管道使用对象,并且您有一个ForEach-Object
cmdlet:
Connect-MSOLService
Import-CSV -Path C:\Users\Me\Desktop\Users.CSV |
ForEach-Object { Get-MSOLUser -UserPrincipalName $_.UserPrincipalName |
Select-Object firstname, lastname, UserPrincipalName, department } |
Export-CSV C:\Users\Me\Desktop\test.CSV
如果您需要从 csv 中查找数据,然后想在脚本中使用它们并将脚本的结果导出到另一个 CSV 中
# Importing MsOnline Module
Import-Module MSOnline
Connect-MsolService
#Import excel document containing our data ,Path "C:\list-email.csv"
$ImportData = Import-Csv "C:\list-email.csv"
$Output = foreach ( $Data in $ImportData )
{
#Storing Email column data in $Data for each row
write-host $Data.Email
Get-MsolUser -UserPrincipalName $Data.IONEmail | Select-Object UserPrincipalName,LastPasswordChangeTimestamp, Departement
}
#Output the array to the CSV File
$Output | Export-CSV "C:\LastLogonDateExport.csv"
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.