Bonjour,
J'utilise actuellement un script pour créer les utilisateurs dans mon AD via un fichier csv. Voila mon script :
Code powershell : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36 ################################################ ##CREATION DES UTILISATEURS DEPUIS FICHIER CSV## ################################################ #Activation du module AD Import-Module ActiveDirectory Write-Host -foreground Yellow "===============================" Write-Host -foreground Yellow "Module ActiveDirectory chargé !" Write-Host -foreground Yellow "===============================" #Importation du fichier contenant les utilisateurs $users = Import-CSV "C:\Users\Administrateur\Desktop\Users.csv" -Delimiter ";" foreach($user in $users) { #Variables $Domaine = (Get-ADDomainController).DefaultPartition $Upn = "@"+(Get-ADDomainController).Domain $PrenomMaj = (Get-Culture).textinfo.ToTitleCase($user.Prenom) $Username = $user.Prenom.ToLower().substring(0,1) + "." + $user.Nom.ToLower() $Name = $PrenomMaj + " " + $user.Nom.ToUpper() + " " + $user.Grade $Ou = $user.OU + "," + $domaine $Service = $user.Service $Mdp = $user.MDP $Initiale = $user.Prenom.ToUpper().Substring(0,1)+$user.Nom.ToUpper().SubString(0,1) New-ADUser -Name $Name -GivenName $PrenomMaj -DisplayName $Name -Surname $user.Nom.ToUpper() -SamAccountName $Username -UserPrincipalName $Username ` -AccountPassword(ConvertTo-SecureString -AsPlainText $Mdp -Force) -ChangePasswordAtLogon $true ` -Office $Service -Department $Service -Initials $Initiale ` -Enabled $true -path $Ou Write-Host -ForegroundColor Gray "Création de l'utilisateur $Username terminé !" }
Celui-ci fonctionne bien mais les identifiants ne sont pas inclus dans le CSV or je dois les rajouter dedans car j'envoi ensuite (par publipostage Word) les identifiants et mot de passe aux utilisateurs.
Donc j'aimerais savoir comment je peut faire pour exporter le contenu pour chaque utilisateur de la variable $Username dans une nouvelle colonne de mon CSV source.
Voici un code que j'ai essayé, fonctionnel mais je ne trouve pas comment faire pour l'ajout dans le fichier source sans la suppression de celui-ci.
Code powershell : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43 ################################################ ##CREATION DES UTILISATEURS DEPUIS FICHIER CSV## ################################################ #Activation du module AD Import-Module ActiveDirectory Write-Host -foreground Yellow "===============================" Write-Host -foreground Yellow "Module ActiveDirectory chargé !" Write-Host -foreground Yellow "===============================" #Importation du fichier contenant les utilisateurs $users = Import-CSV "C:\Users\Administrateur\Desktop\Users.csv" -Delimiter ";" foreach($user in $users) { #Variables $Domaine = (Get-ADDomainController).DefaultPartition $Upn = "@"+(Get-ADDomainController).Domain $PrenomMaj = (Get-Culture).textinfo.ToTitleCase($user.Prenom) $Username = $user.Prenom.ToLower().substring(0,1) + "." + $user.Nom.ToLower() $Name = $PrenomMaj + " " + $user.Nom.ToUpper() + " " + $user.Grade $Ou = $user.OU + "," + $domaine $Service = $user.Service $Mdp = $user.MDP $Initiale = $user.Prenom.ToUpper().Substring(0,1)+$user.Nom.ToUpper().SubString(0,1) New-ADUser -Name $Name -GivenName $PrenomMaj -DisplayName $Name -Surname $user.Nom.ToUpper() -SamAccountName $Username -UserPrincipalName $Username ` -AccountPassword(ConvertTo-SecureString -AsPlainText $Mdp -Force) -ChangePasswordAtLogon $true ` -Office $Service -Department $Service -Initials $Initiale ` -Enabled $true -path $Ou Write-Host -ForegroundColor Gray "Création de l'utilisateur $Username terminé !" $table=@" ID;MDP $Username;$MDP "@ $table | Set-Content "C:\Users\Administrateur\Desktop\users.csv" }
Partager