将变量导出到.csv文件

Geo*_*scu 1 powershell export-to-csv

我使用PowerShell从AD中提取部门列表:

$departments = Get-ADUser -Filter * -Property Department |
               Where-Object { $_.Department } |
               Select -Expand Department -Unique
Run Code Online (Sandbox Code Playgroud)

在此操作结束时,如果我在控制台上输入,$departments我会按照自己的意愿获得所有部门的名称.但是,如果我尝试使用它将其导出到.csv文件

| Export-Csv H:\TEST\DEPTAAAAA.csv
Run Code Online (Sandbox Code Playgroud)

我明白了

#TYPE System.String
Length
4
9
5
13
13
13
Run Code Online (Sandbox Code Playgroud)

如何导出存储在中的部门名称,$departments以便输出是包含部门名称的.csv文件?

Ans*_*ers 5

Export-Csv小命令导出输入对象作为输出CSV的字段的属性.由于输入是字符串对象的列表,因此输出是Length这些对象的property().

Department如果要通过Export-Csv以下方式导出属性,请不要展开该属性:

$departments = Get-ADUser -Filter * -Property Department |
               Where-Object { $_.Department } |
               Select Department -Unique

$departments | Export-Csv 'H:\TEST\DEPTAAAAA.csv'
Run Code Online (Sandbox Code Playgroud)

或者使用Out-File而不是Export-Csv如果要将字符串列表写入输出文件:

$departments = Get-ADUser -Filter * -Property Department |
               Where-Object { $_.Department } |
               Select -Expand Department -Unique

$departments | Out-File 'H:\TEST\DEPTAAAAA.csv'
Run Code Online (Sandbox Code Playgroud)