AD-számítógépek hozzáadása egy Powershell-tömbhöz

2020. szeptember 15 1220 Nézetek powershell hirdetési számítógépeket ad hozzá a tömbhöz

Böngésszen a bejegyzések témái között





Bevezetés

Egyféleképpen adhat hozzá AD-számítógépeket a PowerShell-tömbhöz. Az APowerShell tömb egy adatstruktúra, amely elemek gyűjteményét tárolja.



Ideális esetben a PowerShell Get-ADComputer parancs futtatásakor az eredményt automatikusan egy tömbben kell tárolni. Néhány adminisztrátor azonban problémákba ütközhet az adatokkal való munka során a tömb tárolási módja miatt.

Ebben az útmutatóban leegyszerűsítem az AD számítógépek PowerShell-tömbhöz való hozzáadását. Különféle módokat mutatok be a tömbben lévő adatok manipulálására. Az útmutató azt is ismerteti, hogyan használhatja az AD számítógépeket PowerShell-tömbben az aForEach utasításban.



Mielőtt elkezdené az AD-számítógépek kezelését egy Powershell-tömbben, le kell kérnie a számítógépeket. A következő szakasz bemutatja, hogyan szerezhet be AD-számítógépeket a PowerShell Get-ADComputer paranccsal.



Hogyan szerezhet be AD-számítógépeket az Active Directoryból

AD-számítógépek beszerzéséhez futtassa az alábbi parancsot:

|_+_|

A parancs a tartomány összes számítógépének nevét adja vissza.



powershell Adcomputers hozzáadása a tömbpéldáhozNEM javasolt a fenti parancs futtatása éles környezetben. Ez azért van, mert ha több ezer számítógépe van, túl sokáig tarthat. Lehet, hogy jobb alternatív szűrést használni a * helyett.

Tekintse meg a fenti parancs eredményét. Korábban azt mondtam, hogy amikor lekéri az AD-számítógépeket, az már egy PowerShell-tömbben van.



Ennek megerősítéséhez futtassa az alábbi parancsot:

|_+_|

Íme az eredmény

az internet biztonsági beállításai megakadályozva

Egyszerűen becsomagoltam az előző parancsot egy () operátorba, és a GetType módszer a visszaadott PowerShell-objektum típusának meghatározásához.

Az eredmény megerősíti, hogy a Get-ADComputer parancs eredménye a System.array .

Tehát, ha egy tömbről van szó, miért keresnek az emberek még mindig a powershellben, és adnak hozzá számítógépeket a tömbhöz?

Az útmutató további részében erre a kérdésre fogok válaszolni. Beleértve az AD számítógépek hozzáadását egy tömbhöz változón keresztül. És hogyan kell előkészíteni az adatokat az aForEach utasításban való használatra.

PowerShell Adjon hozzá AD-számítógépeket egy tömbhöz

Az alábbiakban többféleképpen adhat hozzá AD-számítógépeket egy tömbhöz:

PowerShell Adjon hozzá AD-számítógépeket egy változó nélküli tömbhöz

Amint azt az utolsó részben már tárgyaltuk, amikor a Get-ADComputer segítségével lekéri a számítógépeket az Active Directoryból, az eredmény már egy tömbben van.

Úgy gondolom, hogy a legtöbb ember azt gondolhatja, hogy nem egy tömbben található, az az adatok megjelenítési módja.

Nézzük újra a parancsot. Itt van:

|_+_|

És az eredmény:

PowerShell Adja hozzá az AD-számítógépeket egy változók nélküli tömbhöz

Figyeljük meg, hogy az eredménynek van egy fejléce, ún Név . Ez az objektumtulajdonság, amelyet a Select-Object paranccsal adtunk vissza.

Önmagában ez nem probléma. De ha megpróbálja ezt használni az aForEach utasításban, akkor hibákat ad vissza. Különösen akkor, ha az értéket egy másik PowerShell-parancsban próbálja használni a ForEach utasításon belül.

Hogyan adja vissza az értékeket a tulajdonság fejléce nélkül? Ezt kétféleképpen teheti meg.

Az egyik, a parancs módosításával az alábbiak szerint:

|_+_|

Figyeld meg, hogy a fejléc eltűnt!

A fejlécek eredményből való eltávolításának másik módja a -Bővítse ki a tulajdonságot paramétere Select-Object .

html5 offline tároló mega
|_+_|

Íme az eredmény kész fejléccel.

PowerShell Adja hozzá az AD számítógépeket egy változóval rendelkező tömbhöz

A PowerShell-szkriptekben a változók megkönnyítik az adatok kezelését. Először is csökkenti a szkriptek hosszát.

mdnsresponder exe mi ez

Ha AD-számítógépeket szeretne hozzáadni egy PowerShell-tömbhöz változó használatával, módosítsa a parancsot az alábbiak szerint:

|_+_|

Úgy tűnik, hogy a fenti parancs nem ad vissza eredményt. Miért? Mivel az eredmény most a $ADComputers változó!

Az eredmény tárolásának megerősítése $ADComputers változó, futtassa az alábbi parancsot

|_+_|

Itt az eredménye

De az AD-számítógépek PowerShell-tömbben vannak? Nézzük meg az alábbi paranccsal:

|_+_|

Az eredmény azt mutatja, hogy az AD számítógépek még mindig egy tömbben vannak, annak ellenére, hogy egy változóban vannak tárolva!

A PowerShell Adja hozzá az AD számítógépeket egy tömbhöz és egy ForEach utasításhoz

A PowerShellForEach utasítás lehetővé teszi, hogy objektumok gyűjteményén keresztül iteráljon meghatározott feladatok végrehajtásához.

Az egyik alkalmazás az lehet, hogy frissíteni szeretné a Get-ADComputer paranccsal lekért AD-számítógépek tulajdonságait.

Ennél a parancsnál feltételezem, hogy az AD számítógépek az $ADComputers változóban vannak tárolva. Így kombinálhatja az AD-számítógépek eredményét a tömbben egy ForEach utasítással.

|_+_|

Következtetés

AD-számítógépek hozzáadása egy PowerShell-tömbhöz olyan egyszerű, mint a számítógépek lekérése a következővel Get-ADComputer parancs. Ez az útmutató foglalkozott ezzel, de bemutatta azt is, hogyan lehet manipulálni az eredményt a fejlécek eltávolításához. Arról is szó esett, hogyan adhatjuk hozzá az eredményeket egy változóhoz, és hogyan lehet a ForEach-ot használni az eredmény körbefutásához.

Remélem hasznos volt az útmutató. Ha bármilyen kérdése vagy észrevétele van, használja az oldal végén található Válaszolj űrlapot. Alternatív megoldásként megoszthatja tapasztalatait az AD-számítógépek PowerShell-tömbben történő manipulálásával kapcsolatban.

Ha többet szeretne megtudni a PowerShellről, látogasson el PowerShell oldalunkra. Még jobb, ha az összes PowerShell-útmutatónk listájához keressen a PowerShellben (a keresési hivatkozás egy új böngészőlapon nyílik meg).

Egyéb hasznos útmutatók

  • PowerShell-szkript az Active Directory csoporttagok beszerzéséhez
  • A Powershell Próbálja ki a Catch Véget és a hibakezelést

További források és referenciák