【发布时间】:2018-06-03 05:52:28
【问题描述】:
我正在导出所有 AD 用户帐户,并将其格式化为按管理层希望的方式排序的 CSV 文件。他们希望按部门字段对其进行排序,并删除所有未列出部门代码的帐户。
我拼凑了一个脚本来获取格式化的 CSV 文件:
Import-Module ActiveDirectory
Get-ADUser -filter * -properties Name, Title, Department, SamAccountName |
Select-Object GivenName, Surname, Title, Department |
Export-CSV -Path "\\Server\Share\file.csv" -NoTypeInformation
'Filter only users with DEPARTMENT populated'
$BlankColumns = "Department"
Import-CSV \\JXWFILEPRD01\Les$\file.csv |
Where-Object {
$line = $_
($BlankColumns | ForEach-Object{
![string]::IsNullOrEmpty(($line.$_.Trim('"')))
}) -notcontains $false
} | Export-CSV -Path "\\Server\Share\out.csv"
但是,当我导入 CSV 并删除我们不想要的行时,它会将输出溢出到控制台。我还没有弄清楚如何以一种有效的方式使用Export-CSV。它要么出错,要么继续转储到控制台,然后出错。
【问题讨论】:
标签: powershell csv active-directory