晚上,
我正在尝试获取对某个站点的3000+打印机具有权限的所有用户的列表,我一直在尝试将输出到各自单独列中的SID分开,但我一直无法做到这一点。我正在尝试让Export-CSV显示与Out-File相同的数据,因为我确信使用Export-CSV可以做到这一点。这是我所拥有的。
$printers = Get-Content -Path C:\Users\Admin\Desktop\FinalPrinters3020.txt
(Get-Printer $printers -Full).PermissionSDDL | Export-CSV -NoTypeInformation
-Path \\FileServer\Printerlist\Printers30202.csv当我这样做时,我会得到这样的结果:

当我使用Out-File时:
$printers = Get-Content -Path C:\Users\Admin\Desktop\FinalPrinters3020.txt
(Get-Printer $printers -Full).PermissionSDDL | Out-File
'\\FileServer\Printerlist\Printers30202.csv'我知道数据应该是什么样子的:

发布于 2017-09-04 12:19:38
Export-Csv将仅导出对象包含的属性。
使用Get-Printer $printers -Full | Select-Object PermissionSDDL | Export-CSV -NoTypeInformation
在您的示例中,您发送的是string对象,Export-Csv将使用length属性,因为这是字符串包含的唯一属性。使用(Get-Printer -Full).PermissionSDDL | gm -MemberType Properties验证这一点
使用Select-Object cmdlet时,将返回包含所需属性的自定义对象,并且Export-Csv将输出所需的结果。将第一个示例与Get-Printer -Full | select PermissionSDDL | gm -MemberType Properties进行对比
https://stackoverflow.com/questions/46030043
复制相似问题