将变量导出到Excel中

时间:2018-05-14 07:48:43

标签: powershell active-directory export

大家好我使用此命令来计算特定OU中的用户

$datum=get-date -Format MM-yyyy
$norm=(get-aduser -SearchBase "OU=Normal,OU=Benutzer und Computer,DC=my,DC=domain" -filter *|where {$_.enabled -eq "True"}).count
$spec=(get-aduser -SearchBase "OU=Special,OU=Benutzer und Computer,DC=my,DC=Domain" -filter *|where {$_.enabled -e "True"}).count

我每月用Send-MailMessage

邮寄自己的结果

现在我想将结果保存在连续的Excel / CSV文件中。我发现了一些常见问题,但我无法弄清楚如何以正确的方式将其导出。

我想自动添加3个不同列中的数字。

/日期/特殊/正常/

最好的办法是什么?

2 个答案:

答案 0 :(得分:1)

这是一种方法:

[PsCustomObject]@{Date=$datum;Normal=$norm;Special=$spec} | 
    Export-Csv .\Data.csv -NoTypeInformation -Append

我认为通过'连续'你意味着你要反复写入相同的CSV,因此-Append。如果您希望每次尝试覆盖任何现有数据,请删除它。

答案 1 :(得分:1)

您可以使用PSCustomObject来实现这一目标 -

$datum = get-date -Format MM-yyyy
$norm =(get-aduser -SearchBase "OU=Normal,OU=Benutzer und Computer,DC=my,DC=domain" -filter *|where {$_.enabled -eq "True"}).count
$spec =(get-aduser -SearchBase "OU=Special,OU=Benutzer und Computer,DC=my,DC=Domain" -filter *|where {$_.enabled -e "True"}).count

$obj = New-Object PSObject  
$obj | Add-Member -MemberType NoteProperty -Name "Date" -Value $datum 
$obj | Add-Member -MemberType NoteProperty -Name "ADUserNormal" -Value $norm
$obj | Add-Member -MemberType NoteProperty -Name "ADUserSpecial" -Value $spec 
$obj | Export-Csv $env:USERPROFILE\Desktop\File.csv -NoTypeInformation