¿Cómo creo un nombre de usuario de AD con un punto a través de Powershell?

¿Cómo creo un nombre de usuario de AD con un punto a través de Powershell?

Estoy intentando cambiar un script existente para que mi nombre de usuario sea nombre, punto inicial, apellido, por ejemplo: El nombre de usuario de John Doe será j.doe. El script actual funciona (sin .) como: $firstname.substring(0,$i) + $apellido

gracias.

Respuesta1

Hay varias formas de construir esa cadena. [sonrisa] aquí hay 4 de ellos que me vienen a la mente.

qué hace el código...

  • La lectura falsa en un archivo CSV con los datos de Nombre y Apellido
    reemplaza el #region/#endregionbloque completo con su fuente de datos preferida.
  • itera a través de la colección resultante
  • construye la cadena deseada con 4 métodos diferentes.
    Mi preferencia es el -foperador de formato de cadena, pero mucha gente prefiere la concatenación de cadenas.
  • envía cada uno a la pantalla
  • agrega una línea divisoria entre los grupos de resultados

el código ...

#region >>> fake reading in a CSV file
#    when ready to do this for real, use your prefered data source
#    and delete or comment out the entire "#region/#endregion" block
$NameList = @'
FirstName, LastName
Alfa, Bravo
Charlie, Delta
Echo, Foxtrot
'@ -split [System.Environment]::NewLine |
    ConvertFrom-Csv
#endregion >>> fake reading in a CSV file

foreach ($NL_Item in $NameList)
    {
    # string format operator
    '{0}.{1}' -f $NL_Item.FirstName[0], $NL_Item.LastName

    # -join operator
    $NL_Item.FirstName[0], $NL_Item.LastName -join '.'

    # string concatenation
    $NL_Item.FirstName[0] + '.' + $NL_Item.LastName

    # variable-in-string expansion
    "$($NL_Item.FirstName[0]).$($NL_Item.LastName)"

    # yes, you can multiply a string [*grin*] 
    '=' * 20
    }

producción ...

A.Bravo
A.Bravo
A.Bravo
A.Bravo
====================
C.Delta
C.Delta
C.Delta
C.Delta
====================
E.Foxtrot
E.Foxtrot
E.Foxtrot
E.Foxtrot
====================

Respuesta2

$firstname.substring(0,$i) +"."+ $lastname

información relacionada