Archivo

Archivo para martes, 20 de noviembre de 2012

Crear una Dynamic Distribution List vía PowerShell desde un archivo CSV

martes, 20 de noviembre de 2012 Sin comentarios

 

Hola,

Hoy toca un poco de PowerShell y Exchange 2010. Recientemente un cliente nos ha pedido que creemos un script, bastante simple, donde partiendo de un fichero CSV se generen Listas de Distribución Dinámicas en función de los campos Departamento y Ciudad de los atributos de los usuarios en el Directorio Activo.

Bien, el código que me ha salido para el script es el siguiente

<#

** THIS SCRIPT IS PROVIDED WITHOUT WARRANTY, USE AT YOUR OWN RISK **    

 

SYNOPSIS

Create new Dynamic Distribution List in Exchange 2010 from CVS file

 

DESCRIPTION

Use the New-DynamicDistributionGroup cmdlet to Dynamic Distribution List in Exchange 2010

 

The CSV file must include a header row, such as in the following example:

DisplayName,DDL_Path,Province,Department,Alias

 

AUTHORS

Jordi Colominas

Marc Salvador | http://blogs.itpro.es/marc

#>

 

$csvPath = «C:\temp\DDL.csv»

$logPath = «c:\temp\log.txt»

$elements = Import-csv -path $csvPath

 

foreach ($elem in $elements)

{

       New-DynamicDistributionGroup 

-Name $elem.DisplayName

-OrganizationalUnit $elem.DDL_Path

-IncludedRecipients MailboxUsers

-ConditionalStateOrProvince $elem.Province 

-ConditionalDepartment $elem.Department

-Alias $elem.Alias | Out-File $logPath -append

}

 

 

Write-Host -foregroundcolor Cyan «DDL creadas correctamente, $logPath«

Exit

 

El formato del fichero CSV tiene que ser el siguiente

DisplayName,DDL_Path,Province,Department,Alias
DDLExample,corp.Contoso.com/Users,Barcelona,IT,AliasDDL_Example

Es decir, no tiene mucho secreto pero siempre es útil este tipo de cosas

 

Saludos,

Marc