برنامج PowerShell النصي للحصول على أعضاء مجموعة Active Directory

17 يونيو 2021 12732 الآراء كيفية حذف المجلدات أو الملفات باستخدام PowerShell

هذا الدليل عبارة عن تدريب عملي خطوة بخطوة يوضح كيفية كتابة نص Powershell للحصول على أعضاء مجموعة AD. يتم تضمين النص النهائي في نهاية الدليل.

تصفح مواضيع المنشور

ما تحتاجه لكتابة سيناريو Powershell للحصول على أعضاء المجموعة الإعلانية

لإنشاء هذا البرنامج النصي ، ستحتاج إلى ما يلي:

  1. المعرفة الأساسية بأوامر PowerShell
  2. محرر نصوص PowerShell (PowerShell ISE أو PowerGUI)
  3. اسم المجموعة الإعلانية التي تريد تصدير أعضائها

برنامج نصي Powershell للحصول على أعضاء مجموعة AD (أوامر أساسية)

في هذا العرض التوضيحي ، سوف أقوم بتصدير أعضاء المجموعة الموضحة في الصورة أدناه:

اتبع الخطوات أدناه لإنشاء Powershell Script للحصول على أعضاء مجموعة AD:

  • افتح محرر البرنامج النصي الخاص بك. سأستخدم PowerGUI. ثم افتح نافذة برمجة نصية جديدة. احفظ الملف كملف تصدير- ADGroupM members
بوويرشيل الحصول على أعضاء المجموعة الإعلانية

تتمثل الخطوة الأولى في تحديد أوامر أوامر PowerShell cmdlets التي نحتاجها. أسهل طريقة للعثور على أمر PowerShell هي استخدام الأمر Get-Command cmdlet.

جمال Powershell هو أن الأوامر وصفية. لذلك للعثور على أمر يصدر (يحصل على أعضاء AD) ، قم بتشغيل الأمر أدناه:

`@{Name='User Name';Expression={$_.SamAccountName}} |

ها هي نتيجة الأمر:

الأمر الذي نبحث عنه هو احصل على ADGroupMembe ص

  • الخطوة التالية هي تحديد كيفية استخدام هذا الأمر. للقيام بذلك سنقوم بتشغيل الأمر أدناه:
Get-Command -Name *GroupMember

ها هي النتيجة

بالنظر إلى بناء الجملة ، يمكنني رؤية معلمة تسمى [-هوية] . هذا يعني أنه إذا كنت أعرف اسم المجموعة ، يمكنني استخدام الأمر أدناه لسرد أعضائها:

Get-Help Get-ADGroupMember
في الأمر الأخير ، يكون Windows Admins هو اسم مجموعة AD

النتيجة في PowerShell:

بوويرشيل الحصول على أعضاء المجموعة الإعلانية - Get-ADGroupMember -Identity

كنت تعتقد أن النتيجة ستعطينا بالضبط ما نحتاجه. لسوء الحظ ، أعاد أكثر من خاصية واحدة من م مستخدم . يتطلب المزيد من العمل.

قبل أن نبدأ ، سنقوم بتحديث البرنامج النصي الخاص بنا. انسخ الأمر Get-ADGroupMember -Identity Windows Admins في محرر النص الخاص بك.

تذكر تغيير اسم المجموعة الإعلانية إلى الاسم الفعلي للمجموعة في بيئتك

يظهر أدناه نص Powershell المحدث للحصول على أعضاء مجموعة AD:

بوويرشيل الحصول على أعضاء المجموعة الإعلانية - تحديث البرنامج النصي
  • الخطوة التالية هي إضافة الأمر إلى متغير ، سأقوم باستدعاء المتغير $ members. سيبدو البرنامج النصي PowerShell المحدث للحصول على أعضاء مجموعة AD كما يلي:

القسم التالي يأخذ البرنامج النصي إلى المستوى التالي!

برنامج Powershell النصي للحصول على أعضاء مجموعة AD (متقدم)

في هذا القسم سأبني على ما قمت به حتى الآن. هذا ما لدينا حتى الآن.

انظر إلى النتيجة عن كثب. كل مستخدم لديه الخصائص التالية: الاسم المميز ، والاسم ، وفئة الكائن ، ومعرف الكائن ، و SamAccountName ، و SID. لكني فقط بحاجة إلى اسم المستخدم واسم تسجيل الدخول (SamAccountName).

سأقوم بتعديل البرنامج النصي لعرض هاتين الخاصيتين فقط. هنا هو البرنامج النصي PowerShell المحدث للحصول على البرنامج النصي لأعضاء المجموعة الإعلانية.

الإضافة الجديدة الوحيدة هي حدد الكائن يأمر. لقد قمت ببساطة بتوصيل آخر أمر (مخزن في $ members) إلى حدد الكائن حتى أتمكن من إرجاع الخاصيتين اللتين أحتاجهما فقط. هذه هي النتيجة في PowerShell.

يبدو هذا جيدًا ولكن يمكننا جعل الإخراج يبدو أكثر سهولة في الاستخدام. أرغب في استبدال النص بالاسم الكامل و SamAccountName باسم المستخدم.

إليك نص Powershell المحدث للحصول على أعضاء مجموعة AD:

إنه بالضبط نفس البرنامج النصي مع ملف حدد الكائن الأمر المعدل. يتم عرض نتيجة البرنامج النصي حتى الآن أدناه بوويرشيل الحصول على أعضاء المجموعة الإعلانية - إخراج البرنامج النصي حتى الآن.

الإخراج يبدو بالطريقة التي أريدها! في القسم التالي سأضيف بتة أخيرة إلى البرنامج النصي.

برنامج Powershell النصي للحصول على أعضاء مجموعة AD (تصدير نتيجة إلى CSV)

لإكمال البرنامج النصي ، أريد إضافة آخر بت: أمر يقوم بتصدير الإخراج إلى CSV. سأقوم ببساطة بإخراج الإخراج إلى ملف تصدير- CSV يأمر.

هنا هو السيناريو النهائي

برنامج Powershell Get AD Group Members (تصدير النتيجة إلى CSV)

وإخراج CSV

برنامج Powershell Get AD Group Members (تصدير النتيجة إلى CSV)

يمكنك نسخ البرنامج النصي أدناه:

Get-ADGroupMember -Identity 'Windows Admins'

آمل أن ترى مدى سهولة كتابة بوويرشيل للحصول على أعضاء المجموعة الإعلانية. الهدف من الدليل هو إرشادك إلى كيفية كتابة نص PowerShell نموذجي.

أعتقد أنه من المفيد لك أن تتكئ على كيفية كتابة برنامج PowerShell النصي بدلاً من مجرد نسخ نص برمجي. إذا وجدت النص مفيدًا ، فيرجى مشاركته مع القراء الآخرين باستخدام نموذج اترك رد في نهاية هذه الصفحة.

لمعرفة المزيد حول PowerShell ، تفضل بزيارة صفحة PowerShell الخاصة بنا.

أدلة أخرى مفيدة

  • صفيف PowerShell وإضافته إلى الصفيف: تطبيقات وأمثلة
  • Powershell NoTypeInformation: تطبيقات وأمثلة

مصادر ومراجع إضافية