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

الكثير من هذه الأدوات ليست ميزات تطوير غامضة أو أدوات معقدة لإدارة النظام. الحقيقة هي أن Windows لا يوفر طريقة رسومية لإنجاز هذه الميزات/المهام، على الرغم من وجود الوظائف الأساسية المضمنة مباشرة في نظام التشغيل. اتخذت Microsoft هذه الخيارات التصميمية المتعمدة للحفاظ على الواجهة نظيفة وسهلة الاستخدام. إذا كان لكل وظيفة PowerShell مكافئ GUI، فسيصبح Windows معقدًا بشكل ساحق مع وجود الكثير من الأدوات التي تعيق التجربة.
بدلاً من ذلك، تقتصر هذه الميزات على واجهة سطر الأوامر، مما يترك الملايين من الأشخاص غير مدركين حتى لوجود هذه الإمكانات.
روابط سريعة
اكتشف كلمات مرور Wi-Fi المحفوظة على جهازك
اكتشف شبكات Wi-Fi المحفوظة فورًا
هل احتجت يومًا إلى مشاركة كلمة مرور Wi-Fi الخاصة بك مع ضيف، ولكن نسيت ما هي؟ يخزن جهاز الكمبيوتر الذي يعمل بنظام Windows فعليًا كل كلمة مرور Wi-Fi استخدمتها على الإطلاق، ولكن Microsoft لا توفر طريقة سهلة لرؤيتها من خلال الواجهة العادية. بالتأكيد، يمكنك البحث في لوحة التحكم للعثور على كلمة مرور الشبكة المتصل بها حاليًا، ولكن ماذا عن جميع الشبكات الأخرى التي اتصلت بها على مر السنين؟
لحسن الحظ، يوفر لنا Windows الأمر netsh wlan show profiles، الذي يسرد جميع ملفات تعريف الشبكات اللاسلكية المحفوظة على الكمبيوتر. مع بضعة أوامر أخرى مجمعة من خلال خط أنابيب، يمكننا بسهولة الحصول على جميع كلمات مرور Wi-Fi المخزنة على جهاز الكمبيوتر الخاص بنا. قد يبدو الأمر مخيفًا في البداية، ولكنه مباشر بشكل مدهش بمجرد أن تفهم خطوط الأنابيب، و cmdlets، والمعلمات. إليك الأمر:
(netsh wlan show profiles) | Select-String "All User Profile" | %{$name=$_.Line.Split(':')[1].Trim().Replace('"',''); $_} | %{(netsh wlan show profile name="$name" key=clear)} | Select-String "Key Content" | %{$password=$_.Line.Split(':')[1].Trim(); [PSCustomObject]@{WIFI_NAME=$name; PASSWORD=$password}}
يسرد هذا الأمر جميع ملفات تعريف Wi-Fi الخاصة بك، ثم يسترجع كلمة المرور لكل منها. في غضون ثوانٍ، سترى قائمة أنيقة تعرض اسم كل شبكة بجانب كلمة المرور الخاصة بها. لقد استخدمت هذا الأمر مرات لا تحصى عند إعداد أجهزة جديدة أو مساعدة الأصدقاء على الاتصال بالشبكات التي نسيتها.
أنا لا أكتب هذا الأمر في كل مرة؛ بل أقوم بحفظه كملف PS1 (ملف يتم حفظه لتشغيل نصوص PowerShell البرمجية) وأحتفظ به في مجلد. يمكنك حتى استخدام AutoHotkey لربط أوامر PowerShell بمفاتيح للوصول الفوري إذا كنت تعتقد أنك ستستخدم هذا الأمر أو غيره من العناصر الموجودة في القائمة بشكل متكرر.
ابحث عن الملفات المكررة التي تستهلك مساحة التخزين لديك
وفر مساحة عن طريق إزالة الملفات المكررة
الكثير منا لديه مجلد “التنزيلات” فوضوياً. كان مجلدي بالتأكيد كذلك، حتى اكتشفت ميزة PowerShell التالية. لا توجد طريقة مضمنة في Windows للعثور على الملفات المكررة من خلال واجهته العادية، مما يعني أن معظم الأشخاص يجمعون نسخًا متعددة من نفس المستندات والصور ومقاطع الفيديو دون أن يدركوا ذلك.
يمكن لـ PowerShell حل هذه المشكلة باستخدام أمر واحد بسيط:
Get-ChildItem -File | Group-Object Length | Where-Object {$_.Count -gt 1} | ForEach-Object {$_.Group | Get-FileHash} | Group-Object Hash | Where-Object {$_.Count -gt 1} | ForEach-Object { Write-Host "Duplicate files:"; $_.Group.Path; Write-Host "---" }
يحسب هذا الأمر قيمة تجزئة فريدة لمحتوى كل ملف، مما يعني أنه سيكتشف الملفات المكررة الحقيقية حتى لو كانت لها أسماء مختلفة. أقوم بتشغيل هذا الأمر بانتظام على مجلد “التنزيلات” الخاص بي، وأنا دائمًا مندهش من مقدار المساحة التي يمكنني استعادتها عن طريق إزالة الملفات المكررة.
لا تتضمن Windows هذه الوظيفة في واجهة المستخدم الرسومية الخاصة بها لأن اكتشاف الملفات المكررة يمكن أن يستهلك الكثير من الموارد، خاصة بالنسبة للملفات الكبيرة. ربما قررت Microsoft أن معظم المستخدمين لن يحتاجون إلى هذه الميزة غالبًا بما يكفي لتبرير تعقيد الواجهة.
اختبر اتصالك بالإنترنت بمواقع متعددة في وقت واحد
حدد بدقة أسباب التباطؤ بخلاف اختبارات السرعة
عندما تشعر أن الإنترنت بطيء أو غير موثوق به، فإن معظم الأشخاص بشكل غريزي يقومون بتشغيل اختبار سرعة. لكن هذه الاختبارات تخبرك فقط عن اتصالك بخادم واحد. ماذا لو كانت المشكلة في مواقع أو خدمات معينة؟ لا تحتوي Windows على أداة واجهة مستخدم رسومية مضمنة لاختبار الاتصال بمواقع متعددة في وقت واحد، ولكن PowerShell يجعل هذا الأمر سهلاً للغاية.
الأمر البسيط Test-Connection يمكنه التحقق من وجهات متعددة في عملية واحدة:
Test-Connection google.com, facebook.com, youtube.com, microsoft.com
هذا الأمر يقوم باختبار الاتصال بجميع المواقع الأربعة في وقت واحد ويعرض لك وقت الاستجابة لكل موقع. ستلاحظ على الفور ما إذا كانت هناك مشكلة في خدمة معينة أو إذا كان اتصالك بالإنترنت بطيئًا بشكل عام. أستخدم هذا الأمر عندما أشعر أن الإنترنت غير مستقر، لأنه يعطيني صورة أوضح لما يحدث بالفعل.
يمكنك أيضًا جعل الاختبار أكثر دقة عن طريق تحديد عدد مرات اختبار الاتصال بكل موقع:
Test-Connection google.com, cloudflare.com, amazon.com -Count 10
هذا الأمر يرسل 10 اختبارات اتصال إلى كل موقع، مما يمنحك بيانات يمكنك حساب متوسطها. إذا أظهر أحد المواقع باستمرار أوقات استجابة عالية بينما المواقع الأخرى جيدة، فستعرف أن المشكلة ليست في اتصالك بالإنترنت.
التحقق من أن الملفات التي تم تنزيلها أصلية وآمنة
احمِ نفسك بفحص “بصمة” الملف
يفضل الكثير منا تنزيل الملفات التنفيذية من خارج متجر Microsoft. لضمان سلامة التنزيلات، نحتاج إلى طريقة للتحقق مما إذا كانت الملفات تأتي مباشرة من المطورين. يقوم العديد من مزودي البرامج الشرعيين بنشر قيم “بصمة” الملف (hash values) جنبًا إلى جنب مع التنزيلات الخاصة بهم. هذه “البصمات” فريدة وتتغير حتى لو اختلف جزء بسيط جدًا من الملف. للأسف، لا يوفر Windows أي أداة بواجهة رسومية للتحقق من “بصمات” الملفات.
ومع ذلك، فإنه يحتوي على الأمر Get-FileHash، الذي يسمح لنا بعرض “بصمة” الملف الذي تم تنزيله (مع استبدال “filename.exe” باسم الملف الفعلي):
Get-FileHash "filename.exe"
يعيد الأمر “بصمة” SHA256 التي يمكنك مقارنتها بالبصمة الرسمية المقدمة من ناشر البرنامج. إذا كانت متطابقة، فستعرف أن الملف هو بالضبط ما أراده الناشر. إذا لم تكن متطابقة، فهذا يعني أن شيئًا ما حدث خطأ أثناء التنزيل، أو أن الملف قد تم التلاعب به.
PowerShell يفتح الأبواب التي تبقيها واجهة Windows الرسومية مغلقة
تكشف ميزات PowerShell القليلة هذه عن مقدار الوظائف القوية الكامنة تحت واجهة Windows الودية. PowerShell ليس مخيفًا كما قد يبدو. أنا أعرف فقط عددًا قليلاً من الأوامر، لكن هذا يكفي للوصول إلى ميزات Windows التي يفترض الكثير من الناس أن Microsoft لم تدرجها أبدًا كجزء من Windows.
هذه القدرات ليست مفقودة على الإطلاق. إنها تنتظر فقط خلف واجهة سطر الأوامر التي قد لا تستكشفها أبدًا. إن تعلم هذه الأوامر الأساسية يحول الإحباطات اليومية إلى حلول سريعة من سطر واحد. في المرة القادمة التي تشعر فيها بالإحباط بسبب قيود واجهة Windows الرسومية، تذكر أن PowerShell قد يكون لديه بالضبط ما تحتاجه.














