Question
Doublons générés lors du traitement import AD
- ericlm128
- Hors Ligne
- Membre premium
-
Réduire
Plus d'informations
- Messages : 147
- Remerciements reçus 31
il y a 11 mois 1 semaine - il y a 11 mois 1 semaine #31151
par ericlm128
Réponse de ericlm128 sur le sujet Doublons générés lors du traitement import AD
Comme ceci en fait
$SAM = "ROBERT BERNARD JOHN @ '"
$SAM = $SAM -replace '[^a-z0-9]+', ''
$SAM
Dernière édition: il y a 11 mois 1 semaine par ericlm128.
Connexion ou Créer un compte pour participer à la conversation.
- ericlm128
- Hors Ligne
- Membre premium
-
Réduire
Plus d'informations
- Messages : 147
- Remerciements reçus 31
il y a 11 mois 1 semaine #31152
par ericlm128
Réponse de ericlm128 sur le sujet Doublons générés lors du traitement import AD
Fait ceci
$SAM.SubString(0, [Math]::Min(19, $SAM.length))
Les utilisateur(s) suivant ont remercié: witness57
Connexion ou Créer un compte pour participer à la conversation.
- witness57
- Auteur du sujet
- Hors Ligne
- Membre premium
-
Réduire
Plus d'informations
- Messages : 116
- Remerciements reçus 1
il y a 11 mois 1 semaine #31153
par witness57
Ça enlève aussi les espace ?
Dans mon post d'avant j'ai intégré deux -replace parce que le premier ne prenait pas les espace en compte.
Réponse de witness57 sur le sujet Doublons générés lors du traitement import AD
Comme ceci en fait
$SAM = "ROBERT BERNARD JOHN @ '" $SAM = $SAM -replace '[^a-z0-9]+', '' $SAM
Ça enlève aussi les espace ?
Dans mon post d'avant j'ai intégré deux -replace parce que le premier ne prenait pas les espace en compte.
Connexion ou Créer un compte pour participer à la conversation.
- witness57
- Auteur du sujet
- Hors Ligne
- Membre premium
-
Réduire
Plus d'informations
- Messages : 116
- Remerciements reçus 1
il y a 11 mois 1 semaine #31154
par witness57
Je vais regarder ça de plus près pour savoir un peu comment ça marche et tester
Réponse de witness57 sur le sujet Doublons générés lors du traitement import AD
Fait ceci
$SAM.SubString(0, [Math]::Min(19, $SAM.length))
Je vais regarder ça de plus près pour savoir un peu comment ça marche et tester
Connexion ou Créer un compte pour participer à la conversation.
- witness57
- Auteur du sujet
- Hors Ligne
- Membre premium
-
Réduire
Plus d'informations
- Messages : 116
- Remerciements reçus 1
il y a 11 mois 1 semaine - il y a 11 mois 1 semaine #31170
par witness57
Réponse de witness57 sur le sujet Doublons générés lors du traitement import AD
Hello,
Ça réduit à 19 caractères puis ça enlève tous les caractères dont les espaces sauf chiffres et lettres
$SAM.SubString(0, [Math]::Min(19, $SAM.length)) -replace '[^a-z A-Z 0-9]+','' -replace '[ ]',''
Ça réduit à 19 caractères puis ça enlève tous les caractères dont les espaces sauf chiffres et lettres
Dernière édition: il y a 11 mois 1 semaine par witness57.
Connexion ou Créer un compte pour participer à la conversation.
- witness57
- Auteur du sujet
- Hors Ligne
- Membre premium
-
Réduire
Plus d'informations
- Messages : 116
- Remerciements reçus 1
il y a 11 mois 1 semaine #31171
par witness57
Réponse de witness57 sur le sujet Doublons générés lors du traitement import AD
Je viens de voir qu'en exécutant le script après avoir modifié ces deux lignes ci-dessous en ajoutant -replace '[^a-z0-9]+', ''
et en ayant ajouté celle-ci
Mon export csv ne fonctionne plus, au lieu des données en sortie aves les champs qui vont bien, mon export contient la propriété Length avec sa valeur.
Voici le script:
$sn = $_.Nom -replace '[^a-z0-9]+', ''
$givenname = $_.Prenom -replace '[^a-z0-9]+', ''
et en ayant ajouté celle-ci
$SAM.SubString(0, [Math]::Min(19, $SAM.length)) -replace '[^a-z A-Z 0-9]+','' -replace '[ ]',''
Mon export csv ne fonctionne plus, au lieu des données en sortie aves les champs qui vont bien, mon export contient la propriété Length avec sa valeur.
Voici le script:
$users = import-csv -path "C:\Users\Administrateur\Desktop\importusers.csv" -delimiter ";"
$AD_SAM = get-ADuser -filter * -SearchBase "DC=Mondomaine,DC=local" | Select-Object -ExpandProperty SamAccountName
$NewUsers = $users | ForEach-Object {
$sn = $_.Nom -replace '[^a-z0-9]+', ''
$givenname = $_.Prenom -replace '[^a-z0-9]+', ''
$Classe = $_.Classe
$identifiant = $_.identifiant
$ou = "OU=importusers,DC=Mondomaine,DC=local"
$description = 'GCU-ORG{$ELEVE}$' + $Classe
$SAM = $givenname.Substring(0,1).ToLower() + $sn.ToLower()
if ($AD_SAM -contains $SAM)
{
for ($i = 1 ; $AD_SAM -contains ($SAM + $i) ; $i++)
{
}
$SAM = $SAM + $i
}
$AD_SAM += $SAM
$SAM.SubString(0, [Math]::Min(19, $SAM.length)) -replace '[^a-z A-Z 0-9]+','' -replace '[ ]',''
$CN = $sn + " " + $givenname + " " + "[$identifiant]"
$displayName = $CN
$UPN = $SAM + "@Mondomaine.local"
$userAccountControl = 66050
$CannotChangePassword = 1
$HomeDrive = "U"
$HomeDirectory = "\\test\test"
$ProfilePath = "C:\users"
$ScriptLogon = "test"
$Password = '{0}{1}' -f (get-random -Minimum 1000000 -Maximum 9999999), [char](get-random -Minimum 65 -Maximum 90)
$Password = $Password -replace '0',(Get-Random -Minimum 1 -Maximum 9) -replace 'O',[char](get-Random -Minimum 65 -Maximum 78)
$Secure_String_pwd = ConvertTo-SecureString $Password -AsPlainText -Force
$Enabled = 1
New-ADuser -displayName $displayName -Path $ou -Description $description -SamAccountName $SAM -givenname $givenname -Surname $sn -name $displayName -UserPrincipalName $UPN -PasswordNeverExpires $userAccountControl -CannotChangePassword $CannotChangePassword -HomeDrive $HomeDrive -HomeDirectory $HomeDirectory -ProfilePath $ProfilePath -ScriptPath $ScriptLogon -Enabled $Enabled -Accountpassword $Secure_String_pwd
[PSCustomObject]@{
Nom = $sn
Prenom = $givenname
OU = $ou
Description= $description
Login = $SAM
Lettre_lecteur = $HomeDrive
Dossier_personnel = $HomeDirectory
Chemin_profil = $ProfilePath
ScriptLogon = $ScriptLogon
Mot_de_passe = $Password
}
}
$NewUsers | Export-Csv -path "C:\Users\Administrateur\Desktop\export.csv" -Append -NoTypeInformation -Delimiter ";"
Connexion ou Créer un compte pour participer à la conversation.
Temps de génération de la page : 0.122 secondes
- Vous êtes ici :
-
Accueil
-
forum
-
PowerShell
-
Entraide pour les débutants
- Doublons générés lors du traitement import AD