下面是我用来查找用户创建日期和上次登录日期的代码,然后将其写入.csv文件。

$users=Get-ADuser -SearchBase "OU=testou1,dc=US,dc=ITOPS,dc=COM" -Filter * -properties samaccountname,lastlogondate,Created
$forloop = foreach($user in $users) {
         echo $user.samaccountname
          echo $user.created
        echo $user.lastlogondate
        }
$forloop | Out-file c:\bin\exporting.csv -Append

此代码将每个项目打印在新行上,如下所示:
username
created date
last logon date

但我希望所有这些都在同一行上并具有不同的列:
username createdDate lastLogonDate

最佳答案

我将创建具有名称和值属性的对象数组。它将很好地导出到CSV。

请记住,我正在用手机编写此代码,稍后将在ISE中对其进行检查,但是我在下面修改了您的代码:

$users=Get-ADuser -SearchBase "OU=testou1,dc=US,dc=ITOPS,dc=COM" -Filter * -properties samaccountname,lastlogondate,Created

$array = @() #declare the array outside the loop

$forloop = foreach($user in $users) {
$arrayrow = New-Object System.Object
     $arrayrow | Add-Member -type NoteProperty -name User -value $user.samaccountname
      $arrayrow | Add-Member -type NoteProperty -name Created -value  $user.created
    $arrayrow | Add-Member -type NoteProperty -name LastLogonDate -value $user.lastlogondate
  $array += $arrayrow
    }
$array | export-csv  -notype c:\bin\exporting.csv

07-26 06:56
查看更多