簡體   English   中英

將Powershell腳本導出到CSV

[英]Export powershell script to CSV

我有一個小腳本,該腳本為AD中特定OU中的所有用戶檢索LastLogonTimestamp和SAMAccount,並將時間戳轉換為日期,並僅從字符串中提取日期。 那部分工作正常。 然后,我想將其輸出到CSV,以便可以在Excel中將其打開並完美地格式化為列,並且看起來很漂亮。

我已經嘗試了ConvertTo-Csv和Export-Csv,但是都失敗了。 問題是我是Powershell的新手。 這是我的第一個腳本,我不完全了解它的工作原理。 我的腳本可能非常混亂且不合邏輯,但到目前為止,它可以完成任務。

請幫忙。 謝謝。

$userlist = Get-ADUser -SearchBase "OU=IT,DC=whatever,DC=com,DC=au" -Filter * -Properties * | Select-Object -Property Name,LastLogonTimestamp,SAMAccountName | Sort-Object -Property Name

$userlist | ForEach-Object {
    $last = $_.LastLogonTimestamp;
    $ADName = $_.SAMAccountName;

    $tstamp = w32tm /ntte $last;
    if($tstamp.Length -lt "40"){}else
    {
        $ADDate = [DateTime]::Parse($tstamp.Split('-')[1]).ToString("dd/MM/yyyy")
        write-host $ADDate;
        write-host $ADName;
    }
}

您將必須為每個用戶創建對象並將其通過管道傳輸到Export-CSV cmdlet:

$usersList | %{

# current logic

$user = new-object psobject
$user | add-member -membertype noteproperty -name LastLogon -value $last
$user | add-member -membertype noteproperty -name ADName -value $ADName
$user | add-member -membertype noteproperty -name ADDate -value $ADDate
$user
} | export-csv test.csv -notype

用於填充對象的替代語法:

$properties = @{"LastLogon" = $last; "ADName" = $ADName; "ADDate" = $ADDate}
$user = new-object psobject -property $properties

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM