violak
Goto Top

Powershell For Schleife mit loop

Guten Abend,

ich habe folgendes Problem.

Ich habe 2 Arrays.

In dem einem Array sind die IDs 1-5 enthalten.

In dem anderem Array sind 20 Benutzer enthalten.

Ich möchte mit Powershell gerne folgendes erreichen:

ID1 = User1
ID2 = User2
ID3 = User 3
ID4 = User4
ID5 = User5

Danach wäre mit der For Schleife, ja eigentlich ein Abbruch angesagt, da die ID ja nur bis 5 geht.

Ich möchte jetzt aber, dass er wie folgt weiter macht

ID1 = User6
ID2 = User7

usw....

Er soll die IDs solange wiederholen bis die User abgearbeitet sind, dabei darf jeder User natürlich nur eine ID erhalten.

Ich komme aber nicht drauf wie ich das machen kann.

Ich habe folgendes Script dazu gebaut

$benutzer = get-aduser -filter *
$id = "ID1","ID2","ID3","ID4","ID5"  

foreach($b in $benutzer){

for ($i=1;$i -le $id.count;$i++)

$info=$id[$i]

{Set-aduser $b.samaccountname -info $info}

}

Vielleicht ist die For Schleife auch das falsche und ich brauche etwas anderes um an mein Ziel zu gelangen.

Hat jemand von Euch eine Idee und kann mir weiterhelfen?

Ganz lieben Dank face-smile

Content-ID: 607985

Url: https://administrator.de/forum/powershell-for-schleife-mit-loop-607985.html

Ausgedruckt am: 24.12.2024 um 14:12 Uhr

145916
Lösung 145916 26.09.2020 aktualisiert um 20:38:33 Uhr
Goto Top
Ein simpler Modulus (%) Operator reicht dir hier für das Wiederholen der Indexes face-wink
$benutzer = get-aduser -filter *
$id = "ID1","ID2","ID3","ID4","ID5"  
$i = 0
foreach($b in $benutzer){
    Set-aduser $b.samaccountname -info $id[($i % $id.Count)]
    $i++
}
rubberman
rubberman 26.09.2020 um 20:55:24 Uhr
Goto Top
Hehe, war gerade dabei was ähnliches vorzuschlagen.
$i = 0
$benutzer | %{ Set-aduser  $_.samaccountname -info $id[($i++ % $id.Count)] }

Steffen
violak
violak 26.09.2020 um 20:58:56 Uhr
Goto Top
wow mega vieeeelen Dank face-smile

Da wäre ich so nicht drauf gekommen.

Nochmal vielen Dank, das bringt mich echt weiter face-smile
violak
violak 26.09.2020 um 20:59:54 Uhr
Goto Top
Auch an Dich vielen Dank. Mir rettet das gerade den Abend, was Ihr beide hier beigetragen habt face-smile