代码之家  ›  专栏  ›  技术社区  ›  rad_

将对象数据导出到CSV

  •  0
  • rad_  · 技术社区  · 7 年前

    基本上,我想创建一个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"
    

    预期结果将使用数据更正标题。实际结果已更正,但没有数据。

    1 回复  |  直到 7 年前
        1
  •  0
  •   Mike Shepard    7 年前

    Export-CSV 而不是 Out-File .

    推荐文章