Comando PS Alias ​​con output in .csv


0

Sto cercando di eseguire un comando alias e sputo i risultati in un .csv. Ive ha il comando da eseguire, ma non è sicuro della sintassi per aggiungere il comando di esportazione. Qualcuno può aiutare con questo?

Il comando che sto usando come:

get-mailbox | foreach{ 

 $host.UI.Write("Blue", $host.UI.RawUI.BackGroundColor, "`nUser Name: " + $_.DisplayName+"`n")

 for ($i=0;$i -lt $_.EmailAddresses.Count; $i++)
 {
    $address = $_.EmailAddresses[$i]

    $host.UI.Write("Blue", $host.UI.RawUI.BackGroundColor, $address.AddressString.ToString()+"`t")

    if ($address.IsPrimaryAddress)
    { 
        $host.UI.Write("Green", $host.UI.RawUI.BackGroundColor, "Primary Email Address`n")
    }
   else
   {
        $host.UI.Write("Green", $host.UI.RawUI.BackGroundColor, "Alias`n")
    }
 }
}

6
Non dovresti usare Write comandi se si desidera inviare l'output a un CSV; invece, restituirli come una matrice di oggetti e quindi reindirizzare la matrice Export-CSV.
Jeff Zeitlin

O fare entrambi. Creare per aggiungere a una raccolta per l'esportazione successiva e scrivere separatamente l'output.
EBGreen

btw. In PowerShell suggerirei di utilizzare l'output di scrittura PowerShell per l'host. per esempio Write-Host "Aliasn" -fore Green invece di $host.UI.Write("Green", $host.UI.RawUI.BackGroundColor, "Alias n ")`
SimonS
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.