【发布时间】:2020-12-17 09:29:21
【问题描述】:
我有以下问题:
我有一个 Get-ADUser 查询,并且有特定的字段可以获取(仅测试查询)
$AllADUsers = get-aduser -Identity m.mustermann -Properties * | select mail, title, l, GivenName, Surname, company, department, mobile
我还必须在 CSV 中添加一些静态字段,如语言或注释,我为此采用了一些变量:
$Language = "german"
$Comment = ""
$Link = ""
$gender = ""
$exportto = "C:\Temp\Export01.csv"
比我想导出带有分隔符“:”的有序 UTF8 CSV 中的所有条目。 我做了一个 foreach 但我总是出错或不完整的列表 - 我向你展示我的代码(但我有错误)
Foreach ($ADUser in $AllADUsers) {
$MailAddress = $ADUser.mail
$FullName = "$ADUser.GivenName" + "$ADUser.Surname"
$Title = $AdUser.Title
$Location = $ADUser.l
$Comment = $Comment
$Link = $Link
$MobilePhone = $ADUser.mobile
$Language = $Language
$Divison = $ADUser.Department
$GivenName = $ADUser.GivenName
$Surname = $ADUser.Surname
}
$ADUser | Export-CSV -Path $exportto -NoTypeInformation -Delimiter ":" -Encoding UTF8
你能帮帮我吗?
导出必须带有有序列表,不带“”,并且按此顺序。
谢谢。 最大
【问题讨论】:
-
您能否将问题隔离为一个问题,而不是提及您有错误?我认为您正在将值分配给变量,但您从不使用它们。快速提示:FullName 的公式应为
"$($ADUser.GivenName) $($ADUser.Surname)" -
对不起。问题是,我的 foreach 中没有导出。此外,我的值和变量不在导出 CSV 中。怎么了?我在循环中的导出命令不起作用,选择中的列在 csv 中,而不是来自我的循环
-
您使用参数
-Identity的查询只能返回一个对象。所以你不需要循环。考虑在此处使用@robdy 的答案等计算属性。 ;-) -
我知道参数-Identity,这只是在我的示例中,在我的正确查询中,这是有更多结果的。
标签: powershell csv