Bonjour, j'ai un souci qui est en train de me rendre fou...
voici un script qui a pour but de : d'ajouter/supprimer des utilisateurs d'un groupe selon des critères de dates grace à un fichier de conf
il sera à terme executé une fois/jour afin d'appliquer les params.
il se compose de 2 fichiers :
.\ressources\calandar-tse.conf :
un fichier txt dont chaque ligne se compose comme cela :
distinguishedname | date début | date fin
exemple :
le script
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 gretch|01/01/2014|31/12/2014 invite|01/07/2014|31/07/2014
mon soucis est que les commandes : add-adgroup... et Remove-adgroup... (j'ai commentés les 2 commandes dans le code) me renvoie l'erreur suivante :Impossible de trouver un paramètre positionnel acceptant l'argument serv3.mondomaine.local
Code : 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 ############################################################### $groupname = "utilisateurs tse domaine" $server = "serv3.mondomaine.local" ############################################################### $tsemembers = Get-ADGroupMember -identity $groupname $today = get-date Import-Csv ".\ressources\calandar-tse.conf" -Delimiter "|" |` ForEach-Object { $Inscription = 0 $Name = $_.Name $DateOn = $_."Debut" $DateOff = $_."Fin" $datemin=[datetime]::ParseExact($DateOn, "dd/MM/yyyy", $null) $datemax=[datetime]::ParseExact($DateOff, "dd/MM/yyyy", $null) if ($tsemembers.samaccountname -match "$name"){$Inscription = 1} if (($today -gt $datemin ) -and ($today -lt $datemax) -and $inscription -ne 1) { echo "inscription de $name" # Add-ADGroupMember $group –Member $user } elseif ((($today -lt $datemin) -or ($today -gt $datemax ))-and ($inscription -eq 1)) { echo "suppression de $name" # Remove-ADGroupMember $group.name –Member $name –Server $server -confirm:$false }} echo fin
or si j'execute ces commande une par une dans powershell... aucun souci...
qq aurait une piste ?
Partager