基本上,我想创建一个pscustomobject,以便在导出ADObject数据时更正标头。我不确定是否有可能将foreach导入到我的代码中,或者确切地说是哪种方式。到目前为止,我的当前代码确实导出到csv,但不是我希望的格式。
我注意到我目前使用的foreach只看到数组中的元素,但没有提取元素中的实际数据。
$ou_Array = $pOU, $lou, $fOU, $vOU, $cOU, $aOU, $auOu
$date = (Get-Date).AddDays(-14)
$get_Data =
(Get-ADObject -Filter "created -lt '$date'" -SearchBase $ou_Array[0]),
(Get-ADObject -Filter "created -lt '$date'" -SearchBase $ou_Array[1]),
(Get-ADObject -Filter "created -lt '$date'" -SearchBase $ou_Array[2]),
(Get-ADObject -Filter "created -lt '$date'" -SearchBase $ou_Array[3]),
(Get-ADObject -Filter "created -lt '$date'" -SearchBase $ou_Array[4]),
(Get-ADObject -Filter "created -lt '$date'" -SearchBase $ou_Array[5]),
(Get-ADObject -Filter "created -lt '$date'" -SearchBase $ou_Array[6])
$Results = foreach ($item in $get_Data) {
$DN = $get_Data.Context.PostContext | Where-Object {$_ -match
"DistinguishedName"}
$Name = $get_Data.Context.PostContext | Where-Object {$_ -match 'Name'}
$OC = $get_Data.Context.PostContext |
Where-Object {$_ -match 'ObjectClass'}
[pscustomobject]@{
'DN' = $DN
'Computer Name' = $Name
'Object Class' = $OC
}
}
$Results | Out-File -FilePath "C:\Users\$env:UserName\Desktop\results1.csv"
预期结果将使用数据更正标题。实际结果已更正,但没有数据。