none
Script Powershell RRS feed

  • Question

  • Bonjour,

    Comment extraire une liste d'utilisateur avec leur matricule en utilisant un fichier csv avec des adresses mails?

    La premiere ligne de mon fichier excel s'appelle windowsEmailAddress, ensuite j'ai des adresses mails

    Est ce que cette ligne de commande est bonne ?

    Import-Csv -Path c:\temp\adresse.csv | foreach { get-mailbox -Identity windowsEmailAddress} | Export-csv -path C:\temp\adressemail.csv

    Merci d'avance.

    mardi 7 novembre 2017 10:12

Réponses

  • Ce n'est pas exactement ca. En partant du principe que vous utilisez l'adresse mail pour retrouver un utilisateur et obtenir son matricule, il faudra retrouver l'utilisateur et ses propriétés, les stocker dans un object PSO puis exporter le résultat dans un CSV.

    $mails = import-csv -path .\input.csv -delimiter ";"
    $out = @() 
    
    $Mails | % { 
       $addr = $_.WindowsEmailAddress 
       $find = Get-ADUser -Filter { EmailAddress -eq $addr } -properties * 
       $data = New-Object -TypeName PSObject -Property @{UserName=$find.Name;GivenName=$find.GivenName;Surname=$find.Surname;Email=$find.EmailAddress} 
       $out += $data 
       $data = $null 
       }
    
    $out | Export-Csv .\output.csv -delimiter ";" -NoTypeInformation
    

    Ce script a été testé dans un PowerShell Exchange 2013. Le fichier input contenait de vraies informations reconnues au format CSV.



    mercredi 8 novembre 2017 05:58