Jannah Theme License is not validated, Go to the theme options page to validate the license, You need a single license for each domain name.

أحدثت هذه الوحدات النمطية لـ PowerShell التي قمت بتثبيتها ثورة في طريقة عملي

إذا كنت لا تزال تكتب نصوص PowerShell مخصصة لعمليات نقل الملفات الأساسية وتقارير Excel، فأنت تعمل بجهد أكبر مما ينبغي. الوحدات النمطية PowerShell الجاهزة تتعامل مع معظم المهام الشائعة بشكل أفضل من أي شيء ستكتبه من البداية.

وحدات PowerShell النمطية ظاهرة على شاشة BENQ

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

Set-ExecutionPolicy -Scope CurrentUser -ExecutionPolicy RemoteSigned -Force

سنقوم بتثبيت جميع الوحدات النمطية باستخدام نفس النمط مع المعامل -Scope CurrentUser لتجنب الحاجة إلى حقوق المسؤول.

6. PSReadLine

يأتي PSReadLine مُضمّنًا بشكل افتراضي مع PowerShell، ولكن العديد من المستخدمين، بمن فيهم خبراء PowerShell، لا يستفيدون منه بشكل كامل. تُضيف هذه الوحدة النمطية ميزات قوية لتحرير سطر الأوامر، مثل تمييز بناء الجملة، والتحرير متعدد الأسطر، و IntelliSense التنبؤي. يعتبر PSReadLine أداة أساسية لتعزيز إنتاجيتك عند استخدام PowerShell.

PowerShell terminal with the PSReadLine module installed-1

قبل البدء في استخدامه، شغّل الأمر التالي لتثبيت أحدث إصدار من PSReadLine:

Install-Module -Name PSReadLine -Scope CurrentUser -Force

يعتمد IntelliSense التنبؤي على سجل الأوامر الخاص بك لاقتراح الإكمال التلقائي أثناء الكتابة. لتمكينه، شغّل:

Set-PSReadLineOption -PredictionSource History
Set-PSReadLineOption -PredictionViewStyle ListView

تأكد من وجود بعض الأوامر في سجل الأوامر الخاص بك – حاول تشغيل أمر مثل ipconfig، أو Get-Service، أو غيرها من أوامر PowerShell المفيدة.

الآن، أثناء البدء في الكتابة، سيعرض PowerShell اقتراحات من سجل الأوامر الخاص بك. يمكنك التمرير عبرها باستخدام مفاتيح الأسهم؛ اضغط على مفتاحي السهمين لأعلى/لأسفل للاختيار من تنبؤات ListView، واضغط على Enter للتنفيذ. هذه الميزة تجعل كتابة أوامر PowerShell أسرع وأكثر دقة، خاصة للأوامر المعقدة أو التي تستخدمها بشكل متكرر. استغل قوة PSReadLine لتبسيط تجربتك في PowerShell.

5. ImportExcel

وحدة ImportExcel تتجاوز 14 مليون عملية تنزيل على معرض PowerShell، وذلك لسبب وجيه. فهي تتيح لك إنشاء جداول بيانات Excel دون الحاجة إلى تثبيت برنامج Excel نفسه، وهو أمر بالغ الأهمية عند العمل مع الخوادم أو في كتابة برامج التشغيل الآلي (automation scripts).

Import excel module on PowerShell terminal

لتثبيت الوحدة، اكتب الأمر التالي:

Install-Module -Name ImportExcel -Scope CurrentUser

تدعم هذه الوحدة كل شيء بدءًا من عمليات التصدير الأساسية وصولًا إلى الميزات المعقدة مثل الجداول المحورية والمخططات والتنسيق الشرطي. إليك حالة استخدام شائعة: تصدير معلومات العمليات إلى جدول بيانات منسق باستخدام ImportExcel:

Get-Service | Where-Object {$_.Status -eq "Running"} |
Export-Excel -Path "ServiceReport.xlsx" -AutoSize -TableStyle Medium9 -FreezeTopRow

يوضح المثال التالي كيفية استخدام وحدة ImportExcel لتصدير معلومات حول الخدمات قيد التشغيل إلى ملف Excel منسق:

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

excel report generated by importexcel

4. PSWriteHTML

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

PSWriteHTML module export command

لتثبيت وحدة PSWriteHTML، استخدم الأمر التالي في PowerShell:

Install-Module -Name PSWriteHTML -Scope CurrentUser

على سبيل المثال، لإنشاء تقرير نظام يعرض أعلى 10 عمليات استهلاكًا لوحدة المعالجة المركزية (CPU):

Import-Module PSWriteHTML
$procs = Get-Process |
Select-Object Name, CPU, WorkingSet -First 10
New-HTML -TitleText "System Report" -FilePath "Report.html" -ShowHTML {
New-HTMLSection -HeaderText "Process Information" {
New-HTMLTable -DataTable $procs -Filtering -Buttons @('copyHtml5','excelHtml5')
}
}

تتضمن مخرجات HTML الناتجة وظائف JavaScript مدمجة تتيح لك فرز البيانات وتصفيتها وتصديرها بسهولة، مما يجعل تقارير PSWriteHTML جذابة وتفاعلية للغاية. هذه الميزات تجعل تحليل بيانات PowerShell أسهل وأكثر فعالية.

PSWriteHTML module export result-1

3. PSWindowsUpdate

يُعد PSWindowsUpdate الوحدة النمطية الأكثر تنزيلًا على معرض PowerShell، حيث تجاوز عدد التنزيلات 33 مليونًا. وكما يوحي الاسم، تتكون هذه الوحدة من أوامر cmdlets لإدارة عميل تحديث Windows.

وحدة PowerShell النمطية PSWindowsUpdate

لتثبيت الوحدة النمطية، اكتب الأمر التالي:

Install-Module -Name PSWindowsUpdate -Scope CurrentUser

تتضمن الوحدة النمطية أوامر cmdlets لكل عملية تحديث Windows قد تحتاجها – وهي مثالية لسير عمل أتمتة PowerShell. خلال فترات الصيانة، يمكنك التحقق من التحديثات المعلقة عبر جميع الخوادم في وقت واحد باستخدام:

$Servers = 'SERVER01','SERVER02','SERVER03'
Invoke-Command -ComputerName $Servers -ScriptBlock {
Import-Module PSWindowsUpdate
Get-WindowsUpdate -MicrosoftUpdate |
Select-Object @{n='Computer';e={$env:COMPUTERNAME}}, KB, Title, Size, IsDownloaded, IsInstalled, RebootRequired
} | Sort-Object Computer, KB | Format-Table -AutoSize

يعرض هذا بسرعة التحديثات المعلقة عبر جميع الخوادم. يمكنك أيضًا تثبيت تحديثات معينة، أو إخفاء التحديثات التي تسبب مشاكل، أو جدولة عمليات التثبيت. استخدم المعامل -AcceptAll لتخطي التأكيدات. يمكن للوحدة النمطية أيضًا التعامل مع تحديثات برامج التشغيل إذا كنت بحاجة إليها. تعتبر إدارة تحديثات Windows باستخدام PowerShell عملية ضرورية للحفاظ على أمان واستقرار الأنظمة.

2. Terminal-Icons

يُعد Terminal-Icons إضافة رائعة لتحسين مظهر محطة PowerShell الخاصة بك، حيث يضيف رموزًا لأنواع الملفات المختلفة في قوائم الدليل. يتميز كل نوع ملف برمز ولون مميزين، مما يجعل التنقل بين الدلائل أسهل وأكثر وضوحًا.

وحدة Terminal-Icons لـ powershell

لتثبيت هذه الوحدة، استخدم الأمر التالي:

Install-Module -Name Terminal-Icons -Scope CurrentUser

تعمل هذه الوحدة عن طريق تعديل تنسيق إخراج الأمر Get-ChildItem. بعد التثبيت، اكتب:

Import-Module Terminal-Icons

الآن، عند استخدام الأمر Get-ChildItem أو أي من الأسماء المستعارة الخاصة به، سيظهر كل نوع ملف بالرمز واللون الخاص به. على سبيل المثال، ستظهر نصوص PowerShell بشعار PowerShell، وستظهر المجلدات برموز المجلدات، وهكذا. بالإضافة إلى المظهر الجذاب، فإن استخدام Terminal-Icons يجعل التنقل بين علامات تبويب المحطة والمجلدات أسهل بكثير. تذكر أنك ستحتاج إلى تثبيت خط Nerd Font في المحطة الطرفية الخاصة بك حتى يتم عرض الرموز بشكل صحيح. هذه الخطوط ضرورية لعرض الرموز الرسومية التي تستخدمها Terminal-Icons.

وحدة Terminal-Icons لـ powershell get-childitem

1. Transferetto

Transferetto هو وحدة PowerShell تجعل العمل مع FTP و FTPS و SFTP أسهل بكثير. بدلاً من اللجوء إلى فئات .NET أو إضافة أدوات خارجية، تحصل على أوامر cmdlet أصلية ونظيفة في PowerShell. هذه الوحدة توفر لك أدوات قوية لإدارة عمليات نقل الملفات بكفاءة عالية.

Transferetto powershell module

لتثبيت الوحدة، اكتب الأمر التالي:

Install-Module -Name Transferetto -Scope CurrentUser

إذا كنت قد استخدمت وحدات قاعدة البيانات من قبل، فسيكون سير العمل مألوفًا. تتصل، وتقوم بعملك، ثم تفصل الاتصال:

$Client = Connect-FTP -Server "ftp.example.com" -Credential (Get-Credential)
Send-FTPFile -Client $Client -LocalPath "C:\Reports\Report1.xlsx" -RemotePath "/uploads/"
Disconnect-FTP -Client $Client

بالإضافة إلى الأساسيات، يدعم Transferetto خيارات SSL، وأنماط التشفير، ومفاتيح التحقق من صحة الشهادات، وأمر Request-FTPConfiguration المفيد الذي يمكنه اختبار إعدادات اتصال الخادم تلقائيًا نيابة عنك. هذه الميزات تجعل إدارة اتصالات FTP أكثر أمانًا وفعالية.

لا يقتصر الأمر على ملفات مفردة أيضًا. يمكنك دفع الدلائل بأكملها باستخدام Send-FTPDirectory، أو حتى إجراء عمليات نقل FXP (نسخ من خادم إلى خادم). هناك دعم لـ SFTP و SSH أيضًا، بحيث يمكنك تشغيل الأوامر عن بُعد جنبًا إلى جنب مع عمليات النقل. هذا يوفر مرونة كبيرة في إدارة الملفات عبر الشبكات المختلفة.

نظرًا لأنه يعمل على كل من Windows PowerShell 5.1 و PowerShell 7+، فسيتم تشغيل البرامج النصية الخاصة بك عبر Windows و Linux و macOS دون أي تغييرات. هذا يضمن توافقًا واسعًا وقابلية للنقل عبر الأنظمة الأساسية المختلفة.

حتى إذا كنت تستخدم PowerShell للمهام الأساسية فقط، فإن تعلم بعض الوحدات يمكن أن يحدث فرقًا كبيرًا. يساعدك PSReadLine على الكتابة بشكل أسرع من خلال اقتراحات سريعة من سجل محفوظات الأوامر، ويتيح لك ImportExcel العمل مع جداول البيانات دون فتح Excel، وتجعل Terminal-Icons الصدفة الخاصة بك أكثر قابلية للقراءة. هذه الوحدات تعزز إنتاجيتك وتجعل استخدام PowerShell أكثر متعة.

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

زر الذهاب إلى الأعلى