البدء مع PowerShell Gallery

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

في هذا البرنامج التعليمي، ستتعلم كيفية العثور على الموارد، وتنزيلها، وتثبيتها من معرض PowerShell.

تابع معنا وارتقي بمهاراتك في البرمجة النصية اليوم!

المتطلبات الأساسية

سيكون هذا البرنامج التعليمي عرضًا تطبيقيًا. لمتابعة الدروس، تأكد من أن لديك نظامًا يحتوي على PowerShell 5.1 أو أحدث. يستخدم هذا البرنامج التعليمي Windows 10 مع PowerShell 5.3 مثبت، ولكن يجب أن تعمل الإصدارات الأخرى من Windows وPowerShell أيضًا.

تثبيت إطار .NET

قبل الانغماس في معرض PowerShell، تحتاج أولاً إلى وسيلة للتفاعل معه، وإطار .NET هو الطريقة الأساسية.

يجب عليك أولاً تثبيت إطار .NET، الذي يعد أمرًا أساسيًا لوحدة PowerShellGet. تتطلب وحدة PowerShellGet على الأقل إصدار .NET Framework v4.5+. تتيح لك وحدة PowerShellGet اكتشاف الوحدات، وتثبيتها، وتحديثها، ونشر فنون PowerShell.

ولكن في هذا البرنامج التعليمي، ستقوم بتثبيت إطار .NET v4.8.

? يرجى ملاحظة أن إطار العمل .NET الإصدار 4.8 قد يكون مثبتًا بالفعل على نظامك. إذا كان الأمر كذلك، يمكنك تخطي هذه الخطوة. ولكن إذا كان لديك إصدارًا أقدم من إطار العمل .NET، فألغِ تثبيته و قم بالترقية إلى إصدار أحدث.

لتثبيت إطار العمل .NET، اتبع هذه الخطوات:

1. افتح متصفح الويب المفضل لديك وانتقل إلى صفحة تنزيل إطار العمل .NET الرسمية.

2. بعد ذلك، انقر على رابط تنزيل حزمة المطور لإطار العمل 4.8 .NET لتنزيل ملف مماثل لـndp48-devpack-enu. هذا الملف هو حزمة المثبت لإطار العمل الإصدار 4.8 .NET.

Downloading .NET Framework 4.8

3. انتظر حتى يكتمل التنزيل، ثم انقر نقرًا مزدوجًا على الملف المُنزَّل لتشغيل مُثبِّت إطار العمل .NET.

Launching the .NET Framework installer

? إذا كنت تواجه مشكلة في تثبيت إطار العمل .NET، جرب تشغيل ملف التثبيت في [وضع التوافق]

4. حدِّد مربع الاختيار في الأسفل لقبول شروط الترخيص، وانقر على الزر تثبيت لتثبيت إطار العمل 4.8 .NET.

Accepting the license terms and conditions

أدناه، يمكنك رؤية تقدم التثبيت، والذي قد يستغرق بضع دقائق، اعتمادًا على تكوين نظامك.

Viewing the installation progress

5. الآن، انقر فوق زر إغلاق لإغلاق المثبت بمجرد اكتمال التثبيت.

Finishing the .NET Framework installation

6. أخيرًا، قم بفتح PowerShell كمسؤول وقم بتشغيل الأمر التالي [Start-Process] لفتح تطبيق إضافة أو إزالة البرامج (appwiz.cpl). هذا التطبيق يتيح لك عرض قائمة البرامج المثبتة على نظامك.

Start-Process "appwiz.cpl”

سترى إدخالات لـ .NET Framework 4.8 في قائمة البرامج المثبتة، كما هو موضح أدناه.

Verifying the .NET Framework 4.8 installation

تثبيت وحدة PowerShellGet

مع تثبيت وتشغيل .NET Framework، يمكنك الآن تثبيت المكون الأساسي لمعرض PowerShell، وحدة PowerShellGet.

إصدار PowerShellGet (1.0.0.1) المثبت مسبقًا مع Windows Power Shell 5.1 لديه ميزات محدودة. إذا كنت تستخدم Windows PowerShell 5.1 أو الإصدارات الأقدم، فضلاً قم بالنظر في استخدام قدرات PowerShell Gallery المحدثة. أحدث إصدار هو 3.0.17-beta17 في وقت كتابة هذا النص.

لتثبيت وحدة PowerShellGet، اتبع الخطوات التالية:

1. قم بتشغيل الأمر التالي، الذي لا ينتج أي نتائج، ولكنه يمكّن طبقة الأمان للنقل (TLS) 1.2 في جلسة PowerShell الخاصة بك. يعد TLS بروتوكولًا أمنيًا يقوم بتشفير البيانات المرسلة عبر الإنترنت.

تمكين TLS 1.2 أمر حاسم نظرًا لأن PowerShell غير مكون لاستخدام TLS 1.2 بشكل افتراضي. يقوم هذا الأمر بتعيين SecurityProtocol لكائن System.Net.ServicePointManager على TLS 1.2 (Tls12). وبالتالي، يمكنك الوصول إلى PowerShell Gallery باستخدام TLS 1.2 أو أحدث.

[Net.ServicePointManager]::SecurityProtocol = [Net.ServicePointManager]::SecurityProtocol -bor [Net.SecurityProtocolType]::Tls12

? يرجى ملاحظة أن هذا التغيير ينطبق فقط على جلسة PowerShell الحالية. ولكن يمكنك تكوين PowerShell لاستخدام دائمًا TLS 1.2 عن طريق إضافة الأمر أعلاه إلى ملف تعريف PowerShell الخاص بك.

ثم، قم بتشغيل الأمر Install-PackageProvider أدناه لتثبيت مزود حزم NuGet. يتيح لك مزود حزم NuGet تثبيت وإدارة الحزم من مستودع حزم NuGet. هذا المستودع هو مستودع مركزي للحزم مفتوحة المصدر لمنصة .NET.

مزود حزم NuGet مطلوب قبل استخدام الأمر [Install-Module] لتثبيت الوحدات من معرض PowerShell Gallery. لماذا؟ لأن العديد من الوحدات في معرض PowerShell Gallery موزعة كحزم NuGet.

Install-PackageProvider -Name NuGet -Force
Installing the NuGet package provider

بمجرد التثبيت، يمكنك الآن الاستفادة من واجهة برمجة التطبيقات (API) لـ NuGet. تتيح لك واجهة برمجة التطبيقات (API) لـ NuGet الوصول إلى مستودع حزم NuGet لإنشاء أدوات وتطبيقات يمكن أن تتفاعل مع مستودع حزم NuGet. كيف؟ بأداء مهام متنوعة، مثل البحث عن الحزم، وتثبيتها، وتحديثها.

بشكل عام، هناك نسختان من واجهة برمجة التطبيقات (API) لـ NuGet، يمكنك استخدامهما اعتمادًا على متطلباتك وإمكانيات عميلك وخادمك.

Version Description Usage
v2 Uses XML as the data format for communication between the client and server.

This version is based on the original NuGet API introduced in 2011 and is the legacy version of the API.

The v2 API is recommended if you use an older version of NuGet or a client or server that does not support the v3 API.

This version is supported by all versions of NuGet and is compatible with older clients and servers.

v3 Uses JSON as the data format for communication between the client and server. This version was introduced in 2013 as an improvement over the v2 API and included many new features and improvements.

Many new features included are support for side-by-side package installation, improved search capabilities, and large package support.

The v3 API is recommended if you use a newer NuGet version. The v3 API is faster and more efficient than the v2 API.

This version is not supported by older versions of NuGet and may not be compatible with older clients and servers.

? بشكل عام، يُوصى باستخدام واجهة برمجة التطبيقات (API) لـ NuGet v3 حيث توفر أحدث الميزات والإمكانيات.

3. قم بتشغيل الأمر التالي Set-PSRepository، الذي لا يقدم إخراجًا ولكن يقوم بتعيين مستودع PowerShell Gallery (PSGallery) الخاص بك كمصدر موثوق للحزم. بذلك يتيح لك تثبيت الوحدات من PowerShell Gallery.

Set-PSRepository -Name PSGallery -InstallationPolicy Trusted -ErrorAction Stop

4. الآن، قم بتشغيل الأمر Install-Module أدناه لتثبيت أحدث إصدار (-AllowPrerelease) من وحدة PowerShellGet.

Install-Module -Name PowerShellGet -AllowPrerelease -Force
Installing the latest version of PowerShellGet

5. في الختام، قم بتشغيل الأمر Get-InstalledModule أدناه للتحقق من أن وحدة PowerShellGet قد تم تثبيتها بنجاح.

Get-InstalledModule PowerShellGet

سترى وحدة PowerShellGet مدرجة، كما هو موضح أدناه، مع PSGallery كمستودع إذا تم التثبيت بنجاح.

Verifying the PowerShellGet module installation

اكتشاف الوحدات من PowerShell Gallery

الآن بعد أن قمت بتثبيت وحدة PowerShellGet، يمكنك البحث عن الوحدات وتثبيتها من PowerShell Gallery، مما يتيح لك توسيع إمكانيات بيئة PowerShell وتأتي بمهام معقدة بشكل أكثر كفاءة.

للبحث عن وحدة في معرض PowerShell ، يمكنك استخدام أمر الـ Find-Module. يقوم هذا الأمر بالبحث في معرض PowerShell عن وحدات تطابق معايير البحث المحددة ، مثل اسم الوحدة أو الإصدار أو الوسم.

1. قم بتشغيل الأمر Find-Module أدناه للبحث في معرض PowerShell عن وحدات تحمل أسماء متطابقة مع AzureRM.

Find-Module -Name AzureRM

الناتج أدناه يشير إلى وحدة واحدة فقط تطابق الاسم AzureRM في معرض PowerShell. يمكنك أيضًا رؤية معلومات أساسية حول كل وحدة ، مثل اسمها وإصدارها ومستودعها ، وما إلى ذلك.

Discovering modules from the PowerShell Gallery

2. بعد ذلك ، قم بتشغيل أحد الأوامر التالية للبحث عن وحدات باستخدام -Tag مع الكلمة الرئيسية Azure. معامل -Tag غير حساس لحالة الأحرف ، لذا يمكنك استخدام azure أو Azure ككلمة رئيسية للوسم.

لماذا استخدام الوسوم للوحدة؟ الوسم هو كلمة أو تصنيف مرتبط بوحدة ، يصف محتواها ووظيفتها في معرض PowerShell.

على سبيل المثال ، إذا كانت الوحدة متعلقة بمنصة Azure السحابية ، فيمكنك وسم الكلمة المفتاحية Azure. بذلك يتيح للمستخدمين المهتمين بموارد متعلقة بـ Azure العثور على الوحدة واكتشافها بسهولة عن طريق البحث عن الوسم Azure.

Find-Module -Tag 'Azure'
Find-Module -Tag 'azure'

معرض PowerShell هو مستودع شامل للموارد المساهم بها من قبل مجموعة واسعة من المؤلفين، وهناك العديد من الوحدات المتعلقة بالكلمات الرئيسية الشهيرة مثل Azure.

ونتيجة لذلك، سترى قائمة طويلة من الوحدات التي تتطابق مع الكلمة الرئيسية أو العلامة، كما هو موضح في الصور التالية.

Searching for modules in the PowerShell Gallery using a tag

? يمكنك أيضًا استخدام العلامات لتجميع الوحدات ذات الصلة وجعل العثور على الموارد ذات الصلة أسرع. على سبيل المثال، استخدم العلامة التجازؤ لتجميع الوحدات ذات الصلة بتقنيات التجازؤ، مثل Hyper-V أو VMware.

3. الآن، قم بتشغيل الأمر التالي لتضييق البحث والعثور على وحدة محددة عن طريق تجميع المعلمات في أمر Find-Module.

يقوم الأمر أدناه بالبحث عن وحدة من معرض PowerShell باستخدام المعلمات التالية:

  • -Name – البحث عن وحدات بأسم محدد Az.Compute.

  • -Tag – البحث عن وحدات بالعلامات Azure و Microsoft.
Find-Module -Name 'Az.Compute' -Tag 'Azure', 'Microsoft’
Filtering module search results

تثبيت وتحديث الوحدات

عندما تجد وحدة تهمك، فإن تثبيت تلك الوحدة ليس بعيدًا عن بضع ضغطات على لوحة المفاتيح. يمكنك استخدام أمر Install-Module لتنزيل الوحدات من معرض PowerShell وتثبيتها على النظام المحلي الخاص بك.

1. قم بتشغيل الأمر أدناه لتنزيل وتثبيت وحدة Az.Compute من معرض PowerShell.

إذا نجحت، فإن هذا الأمر لا ينتج أي نتيجة، ولكن ستتحقق من التثبيت في الخطوة التالية.

Install-Module -Name 'Az.Compute'

2. بعد ذلك، قم بتشغيل الأمر التالي Get-InstalledModule للتحقق مما إذا تم تثبيت وحدة Az.Compute على نظامك.

Get-InstalledModule -Name 'Az.Compute'
Verifying a module installation

? بدلاً من ذلك، قم بتشغيل cmdlet Get-InstalledModule بدون معلمات لعرض قائمة بجميع الوحدات المثبتة على نظامك. ولكن كن حذرًا، قد تؤذي عينيك أثناء التمرير عبر القائمة إذا كانت هناك العديد من الوحدات المثبتة.

Listing all installed modules

3. الآن، قم بتشغيل الأمر التالي Update-Module، والذي لا يوفر أي نتيجة ولكنه يبحث عن أحدث إصدار لوحدة محددة (أي Az.Compute) ويقوم بتحديثها.

قد يشمل تحديث الوحدات المثبتة إصلاحات للأخطاء، وميزات جديدة، أو تحسينات أخرى.

Update-Module -Name Az.Compute

إلغاء تثبيت وحدات PowerShell

قد ترغب في بعض الأحيان في إزالة وحدة من نظامك. على سبيل المثال، إذا لم تعد بحاجة إلى وحدة ما أو إذا كانت تسبب مشكلة.

لإلغاء تثبيت وحدة من نظامك، يمكنك استخدام cmdlet Uninstall-Module. يقوم هذا الأمر بإزالة الوحدة وجميع ملفاتها من نظامك، وبالتالي يقوم بإلغاء تثبيتها بشكل فعال.

? تأكد من أنك تأخذ بعين الاعتبار تداعيات إلغاء تثبيت وحدة قبل المتابعة. قد يكون إلغاء تثبيت وحدة له تداعيات غير مرغوب فيها، مثل كسر برامج أو نصوص أخرى تعتمد على تلك الوحدة.

قم بتشغيل الأمر التالي Uninstall-Module لإلغاء تثبيت وحدة معينة (Az.Compute) من النظام الخاص بك. لا ينتج هذا الأمر أي نتائج إذا تمت عملية إلغاء التثبيت بنجاح.

Uninstall-Module -Name Az.Compute

?إذا كانت هناك برامج أو سكربتات أخرى تستخدم الوحدة حاليًا، فإن أمر Uninstall-Module سيتسبب في حدوث خطأ وسيفشل عملية الإلغاء.

الاستنتاج

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

استفد من PowerShell Gallery وابحث عن وحدات PowerShell لتخصيص وتعزيز سكربتات PowerShell وسير العمل الخاصة بك اليوم!

Source:
https://adamtheautomator.com/powershell-gallery/