Sto cercando di scrivere uno script PowerShell per Exchange Management Shell, importando un elenco di contatti da un file csv in un gruppo di distribuzione.Scripting di Powershell tramite oggetto-oggetto
ho iniziare con
Import-csv C:\filename.csv | forEach-Object {New-MailContact .......}
Questo metodo funziona bene, tranne che alcune voci nel mio file CSV hanno un indirizzo e-mail vuota, e il creare nuove teh craps contatto fuori perché ExternalEmailAddress è vuoto. Quindi, ho provato:
Import-csv C:\filename.csv | ForEach-Object { Where-Object {$_.ExternalEmailAddress -ne "" } | New-MailContact -Name $_.Name -ExternalEmailAddress $_.ExternalEmailAddress....}
Ma quello non sembra funzionare - non ha filtrato le voci con indirizzi email vuoti.
Cosa sto sbagliando?
No, ho provato, e ottenuto un errore -Nuovo-MailContact: Impossibile associare l'argomento al parametro 'Nome' perché è null. Alla riga: 1 carattere: 106 + Import-csv c: \ FloridaBarTest.csv | Where-Object {$ _. ExternalEmailAddress -ne ""} | New-MailContact -Nome <<<< $ _. Nome -FirstName $ _. FirstName -LastName $ _. FirstName -ExternalEmailAddress $ _. ExternalEmailAddress -OrganizationalUnit "FloridaBarContacts" sembra che il contenuto csv non venga passato attraverso la pipeline . –
Quali errori stai ricevendo? Puoi aggiornare la domanda con un po 'più di informazioni? –
Potrebbe essere utile convalidare i membri del PSObject che vengono passati attraverso la pipeline per assicurarsi di accedervi. Per fare ciò, reindirizzare i risultati di Import-Csv a Get-Member –