كيفية فتح PowerShell بكل الطرق. ويندوز بوويرشيل: ما هو؟

ربما سمع المستخدمون ذوو الخبرة لنظام التشغيل Windows 10 عن الأداة المساعدة لسطر الأوامر PowerShell. قد يكون الأشخاص الذين لديهم خبرة في العمل مع Windows 7 و8.1 على دراية به أيضًا. بعد سنوات من استخدام تطبيق سطر أوامر Windows وملفات ‎.bat، حان الوقت للتعرف على أداة أكثر قوة.

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

الخطوة 1: التثبيت

أولاً، نحتاج إلى الأداة المساعدة PowerShell نفسها. إذا كنت تستخدم نظام التشغيل Windows 10، فهذا يعني أن الإصدار 5 من PowerShell مثبت بالفعل. يستخدم تحديث الذكرى السنوية لـ Windows 10 الإصدار 5.1، ولكن الفرق ليس ملحوظًا. يستخدم Windows 8 و8.1 PowerShell 4، وهو أيضًا كافٍ تمامًا. لن يتسبب تثبيت PowerShell على نظام التشغيل Windows 7 في حدوث مشكلات، ولكن لا يزال يتعين عليك اتخاذ بضع خطوات إضافية. على وجه الخصوص، تحتاج إلى تثبيت .Net Framework بالإضافة إلى ذلك. يمكنك تثبيت Windows Management Framework، والذي يتضمن PowerShell.

يحتوي PowerShell على واجهتين. يمكن للمستخدمين المتقدمين اختيار واجهة المستخدم الرسومية الكاملة المعروفة باسم بيئة البرمجة النصية المتكاملة (ISE). بالنسبة للمبتدئين، من الأفضل استخدام وحدة تحكم PowerShell، أو واجهة بسيطة على شكل سطر أوامر Windows قائمة على النص، أو حتى DOS 3.2.

لتشغيل PowerShell كمسؤول في نظام التشغيل Windows 10، انقر فوق الزر "ابدأ" وانتقل لأسفل إلى Windows PowerShell. في Windows 8.1، ابحث عن Windows PowerShell في مجلد النظام في Windows. في نظام التشغيل Windows 7، يوجد Shell في مجلد الملحقات. كمستخدم عادي، يمكن تشغيل PowerShell بنفس الطريقة، باستخدام زر الماوس الأيسر بدلاً من الزر الأيمن.

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

الخطوة 2: أوامر Windows القديمة

يعمل بناء جملة أمر Windows في PowerShell كالمعتاد. على سبيل المثال، قرص مضغوطتغيير المجلدات, ديريعرض قائمة بجميع الملفات والمجلدات الموجودة داخل المجلد الحالي.

اعتمادًا على كيفية تشغيل وحدة تحكم PowerShell، قد تبدأ ج:\ويندوز\نظام 32أو في ج :\المستخدمون\ . يستخدم المثال الموجود في لقطة الشاشة الأمر قرص مضغوط..(مع مسافة) للانتقال إلى مستوى أعلى في كل مرة، ثم قم بتشغيل الأمر ديرلعرض قائمة الملفات والمجلدات في الدليل ج:\.

الخطوة 3: تثبيت ملفات المساعدة

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

للبدء في استخدام PowerShell، اكتب يساعدوالأمر الذي تحتاجه. تظهر لقطة الشاشة الأمر .

فريق يساعديقول ان ديرهو اسم مستعار لأمر PowerShell Get-ChildItem. إذا كتبت get-childitemالخامس ملاحظة ج:\>سترى نفس الشيء كما هو الحال عند استخدام الأمر دير.

كما هو موضح في الجزء السفلي من لقطة الشاشة، لا يتم تثبيت ملفات المساعدة الخاصة بـ PowerShell تلقائيًا. للحصول عليها، قم بتشغيل PowerShell كمسؤول واكتب مساعدة التحديث. سيستغرق تثبيت ملفات التعليمات عدة دقائق؛ قد يكون عدد من الوحدات مفقودًا - على سبيل المثال، في هذه الحالة، لم يتم تثبيت تعليمات NetWNV وSecureBoot. عندما يكون كل شيء جاهزًا، سيوفر نظام المساعدة الكامل دائمًا النصائح اللازمة.

الآن اكتب الأمر احصل على مساعدةوأي أمر يهمك ("cmdlet" في PowerShell، cmdlets باللغة الروسية)، سيتم عرض وصفه. على سبيل المثال، الحصول على مساعدة الحصول على Childitemيعرض قائمة من الخيارات get-childitem. يمكنك أيضًا عرض الخيارات الممكنة المختلفة. على سبيل المثال

الحصول على مساعدة الحصول على Childitem -examples

يوفر سبعة أمثلة استخدام مفصلة get-childitem. فريق

الحصول على مساعدة الحصول على Childitem -detailed

يتضمن هذه الأمثلة السبعة وشرحًا تفصيليًا لكل معلمة في أمر cmdlet get-childitem.

الخطوة 4: احصل على مساعدة بشأن الإعدادات

في لقطة الشاشة ربما لاحظت وجود قائمتين أدناه بناء الجملةل get-childitem. وجود بناء جملتين مختلفتين يعني أن هناك طريقتين لتشغيل الأمر cmdlet. كيفية إبقاء بناء الجملة منفصلاً عن بعضها البعض وماذا تعني المعلمات؟ الجواب بسيط إذا كنت تعرف الحيلة.

للحصول على تفاصيل بخصوص معلمات cmdlet get-childitemأو أي معلمة استخدام أخرى -ممتلىء:

الحصول على مساعدة get-childitem -full

يمنحك هذا قائمة بما يمكنك فعله باستخدام أمر cmdlet وما سيحدث. انظر إلى لقطة الشاشة.

بمراجعة أوصاف المعلمات، ستلاحظ ذلك get-childitemيجعل من الممكن الحصول على كائن طفل(مثل اسم المجلد الفرعي أو اسم الملف) في موقع محدد، مع أو بدون مطابقة أحرف معينة. على سبيل المثال:

الحصول على ChildItem "*.txt" -recurse

تقوم بإرجاع قائمة بملفات "*.txt" الموجودة في المجلد الحالي وجميع المجلدات الفرعية (بسبب المعلمة -يعيد تنفيذ). بينما

الحصول على العنصر الفرعي "HKLM:\Software"

إرجاع قائمة بجميع مفاتيح التسجيل ذات المستوى الأعلى في HKEY_LOCAL_MACHINE\البرمجيات.

إذا سبق لك أن حاولت الدخول إلى السجل باستخدام سطر أوامر Windows أو ملفات ‎.bat، فسوف تقدر وظيفة خيار الوصول هذا.

الخطوة 5: تعلم الأسماء

هناك سبب يجعل أوامر cmdlets المعروضة حتى الآن متشابهة: الحصول على عنصر الطفل، مساعدة التحديث، الحصول على المساعدةاستخدام نمط الفعل والاسم واحد. تستخدم جميع أوامر PowerShell cmdlets هذه الاتفاقية، حيث تستخدم فعلًا قبل الاسم المفرد. سوف يروق هذا لأولئك الذين عانوا من عدم تناسق أسماء الأوامر في لغات VB وVBA.

ألقِ نظرة على أوامر cmdlets الأكثر شيوعًا:

تحديد المكان: يضبط موقع العمل الحالي على موقع محدد

الحصول على المحتوى: يحصل على محتويات الملف

تحصل على البند: استرداد الملفات والمجلدات

نسخة البند: نسخ كائن من مكان إلى آخر

إزالة بند:حذف الملفات والمجلدات

: يحصل على العمليات الجاري تشغيلها على جهاز كمبيوتر محلي أو بعيد

احصل على خدمة: الحصول على الخدمات التي تعمل على جهاز كمبيوتر محلي أو بعيد

استدعاء webrequest: يقوم باسترجاع المحتوى من صفحة ويب على الإنترنت

لعرض كيفية عمل أمر cmdlet محدد، استخدم احصل على مساعدةكما في الحالة

الحصول على مساعدة نسخ العنصر -full

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

نسخ العنصر c:\users\\documents\* c:\temp

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

جرب هذا الأمر cmdlet:

استدعاء webrequest Askwoody.com

ستحصل على قائمة قصيرة بعناوين صفحة الويب والصور والروابط والمحتويات الأخرى. يرجى ملاحظة في احصل على مساعدةإلى القائمة استدعاء webrequest، والذي "يعرض مجموعة من النماذج والروابط والصور وعناصر HTML المهمة الأخرى" - وهو بالضبط ما يجب أن يظهر على الشاشة.

تساعدك بعض أوامر cmdlets على إدارة PowerShell نفسه:

الحصول على القيادة: قائمة بجميع أوامر cmdlets المتاحة

الحصول على الفعل: قائمة بجميع الأفعال المتاحة

واضح المضيف:مسح شاشة البرنامج المضيف

تتيح لك المعلمات المختلفة تقليل الأوامر وتضييق نطاق الخيارات المفيدة. على سبيل المثال، لرؤية قائمة بجميع أوامر cmdlets التي تعمل مع خدمات Windows، اكتب

الحصول على الأمر *-الخدمة

سيتم عرض جميع الأفعال المتوفرة مع الاسم خدمة. وهنا قائمتهم:

احصل على خدمة

خدمة جديدة

إعادة تشغيل الخدمة

استئناف الخدمة

مجموعة الخدمة

إبدأ الخدمة

خدمة محطة

تعليق الخدمة

يمكنك دمج أوامر cmdlets هذه مع الآخرين.

الخطوة 6: استخدام الأنابيب

إذا كنت معتادًا على سطر أوامر Windows أو الملفات الدفعية، فأنت تعرف إعادة التوجيه وتوجيهات الإخراج. تأخذ إعادة التوجيه (> الرمز) والأنابيب (| الرمز) نتيجة الإجراء وترفقها بموقع آخر. على سبيل المثال، يمكنك إعادة توجيه نتيجة الأمر ديرإلى ملف نصي أو تمرير نتيجة الأمر بينغللفريق يجدلتصفية النتائج المثيرة للاهتمام مثل

دير> temp.txt

بينغ Askwoody.com | ابحث عن "الحزم" > temp2.txt

هنا في الفريق الثاني يجديبحث عن سلسلة الحزم، مأخوذة من العنوان Askwoody.com من قبل الفريق بينغويسلسل كافة الأسطر المطابقة في ملف يسمى temp2.txt.

يعمل أول هذه الأوامر بشكل جيد في PowerShell. لتشغيل الأمر الثاني، ستحتاج إلى شيء مثل

بينغ Askwoody.com | حزم سلسلة مختارة | خارج الملف temp2.txt

يؤدي استخدام إعادة التوجيه وتوجيهات الإخراج إلى توسيع إمكانيات سطر أوامر Windows بشكل كبير: فبدلاً من التمرير إلى ما لا نهاية على الشاشة للبحث عن سلسلة نصية، يمكنك تصفية أوامر Windows التي تحتاجها.

بوويرشيل لديه الدعم يضخ، ولا يقتصر على النص. يسمح لك PowerShell بتمرير كائن بأكمله من أمر cmdlet إلى آخر، حيث يكون الكائن عبارة عن مجموعة من البيانات (تسمى الخصائص) والإجراءات (الطرق) التي يمكنها استخدام تلك البيانات.

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

كيف نفهم هذا؟ استخدم الأمر cmdlet الحصول على عضو. إذا كنت تريد معرفة نوع الكائن الذي يعالجه أمر cmdlet، فقم بتشغيله الحصول على عضو. على سبيل المثال، إذا كنت تحاول فهم العمليات التي يتم تشغيلها على جهاز الكمبيوتر وقمت بتضييق خياراتك إلى أوامر cmdlets ، إليك كيفية معرفة نتيجة أوامر cmdlets:

الحصول على العملية | الحصول على عضو

يؤدي تشغيل أمر cmdlet هذا إلى إنتاج قائمة طويلة من الخصائص والأساليب ، ولكن في بداية القائمة يمكنك رؤية نوع الكائن الذي يتم إنشاؤه :

اسم النوع: System.Diagnostics.Process

تظهر لقطة الشاشة أدناه أيضًا الخصائص مستحق مقابض الحصول على العملية، الاسم، NPM، PM، SI، VMو دبليو إس..

إذا كنت تريد التلاعب بالنتيجة للعمل باستخدام أمر cmdlet هذا (بدلاً من عرض قائمة طويلة من العمليات النشطة على الشاشة)، تحتاج إلى العثور على أمر آخر يستخدم كمدخل System.Diagnostics.Process. للعثور على أمر cmdlet الذي تحتاجه، استخدم PowerShell مرة أخرى:

الحصول على الأمر -Parametertype System.Diagnostics.Process

يوفر أمر cmdlet هذا قائمة بأوامر cmdlets التي يمكنها معالجتها System.Diagnostics.Process.

تُعرف بعض أوامر cmdlets بقبول أي نوع من البيانات تقريبًا. أهمها هو . يمر أمر cmdlet هذا عبر كل كائن يتم إرساله عبر الأنبوب، واحدًا تلو الآخر، ويطبق معايير التحديد المحددة عليه. هناك علامة خاصة تسمى $_ ، والذي يسمح لك باستخدام كل عنصر في الأنبوب، واحدًا تلو الآخر.

لنفترض أنك تريد الحصول على قائمة بجميع العمليات التي يتم تشغيلها على جهاز كمبيوتر باسم "svchost"، أي أنك تريد مطابقة الخاصية اسمعملية com.svchost. استخدم الأمر:

الحصول على العملية | كائن حيث ($_.Name -eq “svchost”)

أمر cmdlet ينظر إلى كل كائن System.Diagnostics.Process، يقارن .اسمهذا الكائن مع "svchost"؛ إذا كانت هناك تطابقات، يتم عرضها على الشاشة. انظر إلى لقطة الشاشة.

الخطوة 7: تحليل أوامر PowerShell المفيدة

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

تعمل هذه الأوامر فقط على نظام التشغيل Windows 10 وفقط عند تشغيل PowerShell كمسؤول. وهي مصممة لإعادة تثبيت تطبيقات Windows 10 المثبتة مسبقًا ويمكن أن تكون مفيدة لأولئك الذين قاموا بإلغاء تثبيت هذه البرامج أولاً ثم قرروا إعادتها. الأوامر تبدو كالتالي:

الحصول على AppXPackage | Foreach (إضافة-AppxPackage -DisableDevelopmentMode -تسجيل "$($_.InstallLocation)\AppXManifest.xml")

إذا قمت بتشغيل هذا الأمر، فتجاهل التحذيرات الحمراء وعند اكتمال الأمر، قم بإعادة تشغيل جهاز الكمبيوتر الخاص بك؛ ستظهر جميع البرامج المثبتة مسبقًا في نظام التشغيل Windows 10 في أماكنها.

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

أمر cmdlet الحصول على AppXPackageإرجاع كائن اكتب اسم Microsoft.Windows.Appx.PackageManager.Commands.AppxPackage، والذي يتضمن الاسم المؤهل بالكامل لحزمة التطبيق وموقع ملف بيان XML المقابل. إذا قمت بتشغيل الأمر cmdlet get-appxpackage، سترى قائمة طويلة من حزم التطبيقات. تعرض لقطة الشاشة وصف تطبيق Xbox.

أمر cmdlet فوريتشحلقات من خلال كل كائن في AppXPackageعن طريق إرسالها إلى cmdlet إضافة AppxPackage. وفق احصل على مساعدةل إضافة AppxPackage، هناك مفتاحان رئيسيان:

  • يُحوّل -يسجلتستخدم لتسجيل التثبيتات الحالية لحزم التطبيقات، يمكنك تعيين المعلمات تعطيل وضع التطويرو يسجل
  • يُحوّل -تعطيل وضع التطويريخبر Windows بإعادة تسجيل حزمة التطبيقات الموجودة التي تم تعطيلها أو إلغاء تسجيلها أو تلفها.

خط " $($_.InstallLocation)\AppXManifest.x ml" يصف مكان وجود الملف manifest.xml. إذا نظرت إلى الملفات AppXManifest.xml، ستشاهد قائمة معقدة من معرفات التطبيق والملفات القابلة للتنفيذ وعددًا كبيرًا من العناصر المرئية المرتبطة بالتطبيق.

بعد إعادة التشغيل، يتم تنزيل كافة حزم التطبيقات المضافة وتثبيتها من متجر Windows.

لقد مر أكثر من عام منذ إصدار Windows 7 وServer 2008.

لقد وجد المبرمجون ومسؤولو النظام والمستخدمون المتقدمون العديد من الاستخدامات للنافذة الزرقاء، على غرار سطر الأوامر.

معظم المستخدمين المبتدئين لا يعرفون حتى ما هو PowerShell (PS).

لكن البرامج النصية لـ PowerShell تسمح لك بأتمتة ما يقرب من 100% من الإجراءات والبرامج النصية التي يتم تنفيذها في نظام التشغيل عبر سطر الأوامر والواجهة الرسومية.

دعونا نتعرف على القدرات الرئيسية لهذا البرنامج، مع إيلاء المزيد من الاهتمام لوظيفة إنشاء وتشغيل البرامج النصية (البرامج الثابتة).

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

ما هو ويندوز باورشيل؟

بوويرشيل– مترجم يعتمد على .NET Framework، ومجهز بلغة البرمجة النصية الخاصة به.

الأول يعني أنه يعمل في وضع النص: تقوم بإدخال أمر، وتشغيله، وعلى الشاشة ترى نتيجة تنفيذه.

كما كان الحال في MS-DOS والإصدارات الأقدم من UNIX.

أما الخيار الثاني فهو يعمل على تبسيط وتسريع وأتمتة إدارة وصيانة الأنظمة والتطبيقات والعمليات والخدمات ذات الصلة من قبل المسؤولين والمستخدمين العاديين.

بالمقارنة مع المترجمين الآخرين، ملاحظة مختلفة:

  • التكامل مع - يسمح لك بإنشاء نصوص برمجية قوية عن طريق إدخال رمز البرنامج فيها؛
  • جميع البيانات التي تم إرجاعها هي كائنات، وليست بيانات نصية/سلسلة، مما يعني أنه يتم تمريرها إلى نصوص برمجية أخرى ومعالجتها بأي طريقة.

بوويرشيل الإصدار 2يتمتع بالقدرات التالية، دعونا ننظر إلى بعض منهم بمزيد من التفصيل:

  • القدرة على تمثيل الأوامر كمدليتس- يتم إطلاقها داخل المترجم، وإلا فسيتم تنفيذ الأمر في عملية منفصلة.
  • استخدام الناقلات- مصممة لنقل البيانات من أمر إلى آخر مع الحفاظ على بنيتها ونوعها.
  • نقل بيانات متكامل متعدد الدفقعبر الشبكة مع تحديد الأولويات واستئناف الاتصال.
  • دعم المعلمات الموضعية والمسماة.
  • العمل في الخلفية- الاستدعاء غير المتزامن للأوامر وتشغيل البرامج النصية على الأجهزة البعيدة.
  • إعداد جلسات محدودة مع العملاء البعيدينوتشغيل البرامج النصية عليها.
  • وحدات- طريقة لتنظيم البرامج النصية عندما تصبح مكتفية ذاتيًا ويتم تنفيذها في حاويتها الخاصة دون التأثير على بيئة الوحدة.
  • توافر معالج الأخطاء.
  • البيئة الرسومية للغة: بناء الجملة، مصحح الأخطاء، التمييز، إكمال الأوامر تلقائيًا مع دعم Unicode والإشارات المرجعية.
  • إضافة نقاط التوقف إلى الخطوطوالأوامر والعمليات والمتغيرات لتصحيح البرنامج النصي.
  • كتلة والتعليقات بين السطور.
  • دعم إنشاء أسماء مستعارة لبعض أوامر cmdletsوالتي يتم تحويلها إلى أوامر عادية في وقت التنفيذ.
  • إنشاء جلسات محدودة،حيث يمكنك تنفيذ قائمة محددة بدقة من الأوامر وأكثر من ذلك بكثير.

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

يمكنك البدء في إتقان لغة برمجة نصية متكاملة دون أي مهارات برمجة.

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

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

أوامر الأوامر

أوامر الأوامر- أوامر PS غريبة، يتم إخفاء مجموعة متنوعة من الوظائف خلفها. يتم تنفيذ الأوامر المضمنة في المترجم على مبدأ الفعل والاسم، على سبيل المثال، Get-Process (الحصول على قائمة العمليات). يتيح لك هذا الحل فهم جوهر الأمر فقط من اسمه (باللغة الإنجليزية).

تدعم بعض أوامر cmdlets تلقي/نقل البيانات ومصفوفات المعلومات مع الحفاظ على بنيتها ونوعها. يعمل هذا على مبدأ الناقل (سيتم مناقشة ذلك في القسم التالي). بغض النظر عن ذلك، يتم تشغيل أوامر cmdlets ومعالجة الكائنات بالترتيب.

لتنفيذ أوامر cmdlets، يمكن استخدام أي واجهات برمجة تطبيقات .NET مدعومة تم إنشاؤها بأي لغة .NET.

وبالتالي، يتم منح المستخدم إمكانية الوصول إلى وظائف محددة للبرنامج.

تستطيع أوامر Cmdlets الوصول إلى المعلومات المطلوبة مباشرة أو من خلال مسارات فريدة (أحرف محركات الأقراص ومسارات الدليل).

باستخدام أوامر cmdlets، يمكنك العمل مع نظام الملفات وكائنات مخزن الشهادات والتطبيقات والخدمات المثبتة.

الناقل

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

هناك ناقل لهذا. كما هو الحال في UNIX، فهو يجمع الأوامر عن طريق تمرير مخرجات أمر cmdlet إلى مدخلات أمر cmdlet آخر، دون تغيير، مع الحفاظ على نوعه.

في هذه الحالة، لا يلزم تحليل المعلومات لكل حاوية أو حرفًا على حدة.

قد تتضمن المعلومات المرسلة أيضًا وظيفة.بعد الانتهاء من عمل الأوامر المدمجة، يتم استدعاء وظيفة تحويل المعلومات إلى نموذج نصي (تحويل البيانات إلى سلاسل) باستخدام تنسيق النص.

نصوص

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

خاصة عندما يجب تنفيذ نفس العمليات مرارا وتكرارا.

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

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

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

ولكن هنا "ليس كل ما يلمع ذهباً": إن كتابة السيناريو الخاص بك أو تحميل نص جاهز (وإن كان ذلك بتخصيصه قليلاً ليناسب أهدافك الخاصة) لن ينجح بهذه السهولة.

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

للتشغيل على Windows PS، يجب عليك اجتياز التحكم في التشغيل الخاص به.

إذا فشل، ويجب تنفيذ البرنامج النصي، فسيتعين عليك تغيير تكوين الكائنات المسؤولة عن أمان وحدات الماكرو.

قبل استخدام البرامج النصية

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

يعد تشغيل البرنامج النصي الذي تم تنزيله على جهاز المستخدم خيارًا بسيطًا وفعالًا لنشر البرامج الضارة أو سرقة المعلومات الشخصية بواسطة المهاجمين.

كل شيء يحدث بسبب الجهل الأساسي بمحتويات ملف البرنامج النصي (ps1)والرغبة في حل مشاكلهم بسرعة على حساب عمل الآخرين. تعمل الكائنات التي تتحكم في مستوى أمان تنفيذ البرنامج النصي على إنشاء بيئة يستحيل فيها تشغيل البرنامج النصي.

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

نظرًا لأن تكوين الأمان غير مناسب للأشخاص الذين يحتاجون إلى تنفيذ البرامج النصية الخاصة بهم وتشغيلها، فمن الممكن تغيير التكوين.

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

تحتوي القشرة على ثلاثة مستويات من الأمان:

  • لا يتم التعرف على الملفات ذات ملحق ps1 بواسطة النظامكملف قابل للتنفيذ ويتم تعيينه على أنه غير معروف أو نص (بالنقر المزدوج يتم فتحه في محرر النصوص الافتراضي المستخدم على الكمبيوتر)؛
  • تسمح لك الصدفة بتنفيذ البرامج النصية بعد تحديد مسارها الكامل، لا يتم البحث في ملفات البرامج النصية الموجودة في الدليل الحالي، مما يجعل من المستحيل تنفيذ وحدات الماكرو الموجودة في الدليل الحالي؛
  • تشغيل البرنامج النصي لسياسة التنفيذ المدمج، المسؤول عن إضافة المطلوب إلى قائمة البرامج النصية المسموح بها.

لا تفكر حتى في تغيير التكوين، وخفضه إلى المستوى الثاني على الأقل، دون التعرف على الأساسياتبوويرشيلحتى تبدأ في فهم محتويات ملفات * .ملاحظة1.

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

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

يمكنك التحقق من الحالة الحالية لسياسة التنفيذ باستخدام أمر "Get-ExecutionPolicy".مهما كانت سياسة الأمان، فلن يتمكن المستخدم من تشغيل برنامج نصي يحتوي على أوامر ليس لديه الامتيازات الكافية لتنفيذها.

إطلاق بوويرشيل

حان الوقت للانتقال من النظرية إلى التطبيق. لذلك، لتنفيذ البرامج النصية، تحتاج إلى الحصول على توقيع رقمي أو (الخيار الثاني أبسط).

هناك عدة طرق لفتح نافذة PowerShell.

ويتم تقديمه في شكلين:

  • وحدة التحكم الكلاسيكية

  • بوويرشيل ISE - يضيف دعمًا لعلامات التبويب، وبناء الجملة، والمساعدة السياقية، والقوائم السياقية والرئيسية، مما يسهل العمل في المترجم بشكل كبير.

يبدأ

أسهل طريقة للاتصال بـ PS هي من خلال Start.

  1. افتح القائمة(في نظام التشغيل Windows 7، انقر فوق "كافة البرامج").
  2. انتقل إلى دليل Windows PowerShellوانقر على الأيقونة المطلوبة.

أرز. 4 – قم بتشغيل PS عبر Start

يمكنك أيضًا الاتصال بـ PS عبر نظام بحث متكامل .

مترجم الأوامر

بالنسبة لأولئك الذين يحبون طرق التشغيل غير القياسية والسريعة، استخدم نافذة التشغيل. يتم فتحه باستخدام الزر الذي يحمل نفس الاسم في Start (ابدأ) ومجموعة المفاتيح Win + R.

في مربع الحوار نكتب "بوويرشيل"واضغط على "أدخل".

فوز + X

في نظام التشغيل Windows 10، يمكن استدعاء PS من قائمة WinX. والحقيقة هي أنه افتراضيا عن طريق النقر على الأمر "سطر الأوامر"افتح كمد. يمكن استبداله بـ PowerShell.

افتح "خصائص" شريط المهام، وفي علامة التبويب "التنقل"، ضع علامة اختيار بجوار الخيار الوحيد واحفظ الإعدادات.

يمكنك الاتصال بـ PowerShell من خلال سطر الأوامر عن طريق كتابة "powershell" فيه أو عن طريق تشغيل الملف القابل للتنفيذ على طول المسار: %WINDIR%\ نظام32\ WindowsPowerShell\v1.0 لأنظمة 32 بت وعلى %WINDIR%\ سيسوو64\ WindowsPowerShell\v1.0 لنظام التشغيل Windows 64 بت لأي إصدار.

أرز. 8 – قم بتشغيل PS من الدليل حيث تم تخزين الملف القابل للتنفيذ الخاص به

إعداد سياسة أمنية

غادر قليلا– السماح لـ PowerShell بتنفيذ البرامج النصية. أدخل الأمر "Set-ExecutionPolicy RemoteSigned" واضغط على "Y".

هذا كل شئ. يمكنك الآن تشغيل أي أوامر cmdlets وبرامج نصية. لنحاول، على سبيل المثال، عرض قائمة بالعمليات النشطة عن طريق تنفيذ "Get-Process".

تشغيل البرامج النصية

يمكنك إنشاء برامج نصية في أي برنامج (من الأفضل استخدام Win، أو شيء مشابه، مع دعم بناء الجملة أو التحقق من الصحة) أو في برنامج PowerShell ISE.

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

لنفترض أنك كتبت النص البرمجي الأول (هذا للحصول على قائمة بالعمليات الجارية)، وحفظته من خلال قائمة "ملف"، وتحتاج إلى تشغيله. ويتم ذلك بثلاث طرق:

1 نكتب المسار الكامل للبرنامج النصي في PowerShell (أو ISE);

أرز. 13 – تشغيل البرامج النصية من نافذة PowerShell ISE

مهمبحيث لا توجد مسافات في المسار إلى الملف!

بوويرشيل– أداة قوية لتبسيط العمليات الروتينية في Server 2008 والإصدارات الأحدث. من المزايا المهمة لـ PowerShell هي البرامج النصية والتوافر نسخة من البرنامج مع واجهة رسومية PS ISE. يتم تقديم الأوامر الموجودة فيه في شكل أوامر cmdlets، مما سيسمح لك بالتعرف على الصدفة وفهم معنى كل أمر. لن تسمح سياسة الأمان للمبتدئين بإيذاء جهاز الكمبيوتر الخاص بهالبرامج النصية الواردة من مصادر غير معروفة، ووضع التصحيح، وإنشاء أوامر cmdlets الخاصة بك، والوظائف وآلية معالجة الأخطاء تفتح إمكانيات غير محدودة للمبرمجين والمسؤولين.

هناك عدة طرق مختلفة لتشغيل البرنامج النصي، وفيما يلي أهمها:

  1. إطلاق بوويرشيلوقم بتشغيل البرنامج النصي فيه (أدخل المسار إلى الملف واسم الملف، على سبيل المثال، مثل هذا: C:\Scripts\test.ps1، أو انتقل إلى مجلد البرنامج النصي باستخدام الأمر cd C:\Scripts وقم بتشغيله باستخدام الأمر.\test.ps1) يمكن العثور على الصدفة وإطلاقها بعدة طرق. إحدى الطرق هي من خلال قائمة ابدأ. بالنسبة لنظام التشغيل Windows 7 - تحتاج إلى الانتقال إلى "كافة البرامج" - "البرامج الملحقة" - "Windows PowerShell" وتشغيل غلاف "Windows PowerShell". بالنسبة لنظام التشغيل Windows 10 - تحتاج إلى العثور على المجموعة التي تحتوي على الحرف "W" وستجد فيها "Windows PowerShell".
  2. إطلاق "Windows PowerShell ISE"هو برنامج - بيئة تطوير تسمح لك بتحرير وتصحيح البرامج النصية لـ PowerShell، والتي تتوفر أيضًا بشكل افتراضي مع PowerShell نفسه. بعد تشغيله، ما عليك سوى النقر فوق الزر "فتح" أو الانتقال إلى القائمة "ملف - فتح" وتحديد البرنامج النصي المطلوب، ثم الضغط على F5 أو الزر "تشغيل البرنامج النصي". يمكنك العثور على Windows PowerShell ISE في نفس المكان مثل غلاف PowerShell - في قائمة "ابدأ".
  3. إطلاق سطر الأوامر القياسيواكتب فيها:
    بوويرشيل -ملف<имя_скрипта> (على سبيل المثال: بوويرشيل -ملف myscript.ps1)

إذا لم تقم بتشغيل البرامج النصية لـ PowerShell من قبل، فمن المحتمل أن تتلقى الرسالة التالية: لا يمكن تحميل الملف<имя_скрипта>لأن تنفيذ البرنامج النصي محظور لهذا النظام. اكتب "الحصول على مساعدة about_signing" لمزيد من المعلومات. ويرجع ذلك إلى حقيقة أنه لأسباب أمنية ولمنع التنفيذ غير المقصود للتعليمات البرمجية الضارة، يجب توقيع جميع البرامج النصية رقميًا.

كيف تسمح بتنفيذ برنامج PowerShell النصي غير الموقع؟

1. في بوويرشيلقبل تشغيل البرنامج النصي، قم بتشغيل الأمر للسماح بتنفيذ البرامج النصية غير الموقعة لجلسة الصدفة الحالية:

Set-ExecutionPolicy RemoteSigned - عملية النطاق

2. عند بدء التشغيل من سطر الأوامر القياسياستخدم المعلمة -executionpolicy، على سبيل المثال. قم بتشغيل البرنامج النصي مثل هذا:

<имя_скрипта>

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

3. السماح بالإطلاق إلى الأبد: قم بتشغيل PowerShell كمسؤول، ثم قم بتشغيل الأمر:

Set-ExecutionPolicy RemoteSigned

ملحوظة:إذا تم تنزيل البرنامج النصي من الإنترنت، لتجنب طلب تأكيد الإطلاق، فأنت بحاجة إلى استخدام Bypass بدلاً من RemoteSigned - مع تعطيل أي طلبات وتحذيرات تمامًا.

كيفية تشغيل البرنامج النصي PowerShell في الخلفية؟

للقيام بذلك، ما عليك سوى استخدام معلمة التشغيل -WindowStyle، والتي يمكن أن تأخذ القيم التالية: عادي، ومصغر، ومكبر، ومخفي. وبالتالي، لتشغيل برنامج نصي غير موقع في الخلفية، تحتاج إلى تشغيل الأمر:

بوويرشيل - سياسة التنفيذ - ملف RemoteSigned -WindowStyle المخفي<имя_скрипта>

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

تشغيل برنامج PowerShell النصي مع المعلمات

يجب أن يتم الإطلاق الفعلي كما لو كنت تقوم بتشغيل برنامج عادي أو ملف بات يحتوي على معلمات. على سبيل المثال، لتشغيل برنامج نصي بمعلمات من سطر الأوامر، يمكنك كتابة الأمر التالي:

بوويرشيل -executionpolicy RemoteSigned -file<имя_скрипта>param1 param2 "معلمة نصية أخرى"

في البرنامج النصي نفسه يمكنك الحصول على هذه المعلمات مثل هذا:

Param ($var1، $var2، $var3) echo $var1، $var2، $var3

في PowerShell ISE، يمكنك تشغيل برنامج نصي يحتوي على معلمات بنفس الطريقة باستخدام جزء الأوامر.

كيفية تشغيل البرنامج النصي PowerShell باستخدام الاختصار؟

ويمكن إنجاز هذه المهمة بطريقتين:

  1. قم بإنشاء ملف Bat/cmd لكتابة أمر لتشغيل البرنامج النصي (لقد قرأت المعلمات أعلاه)
  2. قم بإنشاء اختصار لـ PowerShell، والذي يمكن العثور عليه في المجلد c:\Windows\System32\WindowsPowerShell\v<версия>\ وفي خصائص الاختصار في حقل "الكائن"، أضف المعلمات الضرورية.

وبالتالي، على سبيل المثال، لتشغيل برنامج Powershell النصي عندما يقوم المستخدم بتسجيل الدخول، يمكنك ببساطة إنشاء اختصار كما هو موضح في النقطة 2 ووضعه عند بدء التشغيل. كما أن إنشاء اختصار باستخدام إحدى الطرق المذكورة أعلاه سيسمح لك بتشغيل البرنامج النصي بسهولة كمسؤول أو كأي مستخدم آخر كبرنامج عادي.

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

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

لا يوجد شيء معقد في استخدام PowerShell. فقط اتبع جميع التعليمات الواردة في هذه المقالة وسوف تنجح.

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

كيفية فتح بوويرشيل؟

ويمكن القيام بذلك بعدة طرق التالية:

  • - ستجد التطبيق في القائمة العامة للمكونات تحت حرف W.
  • باستخدام البحث في شريط المهام - افتحه وأدخل كلمة PowerShell للبحث.
  • باستخدام قائمة "تشغيل"، قم بتشغيلها من خلال مجموعة Win + R واكتب اسم الأداة المساعدة، وبعد ذلك سيتم العثور عليها في النظام.
  • في Commander، قم بتعيين إجراء PowerShell - ولكن يجب أن تعلم أنك ستعمل مع التطبيق من خلال خط قيد التشغيل بالفعل، وليس في نافذة منفصلة.
  • في إعدادات Windows، حدد خصائص شريط المهام وقائمة ابدأ. في علامة التبويب "التنقل"، حدد المربع بجوار "استبدال سطر الأوامر بـ PowerShell...". يمكنك الآن تمكين الأداة المساعدة باستخدام مجموعة Win+X.

كيفية كتابة وتشغيل البرامج النصية؟

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

يمكنك كتابة البرامج النصية في التطبيق نفسه مثل هذا:

  • أطلقها.
  • انقر فوق العنصر "إنشاء".
  • أو انقر فوق "ملف" وحدد "إنشاء" من القائمة التي تظهر.
  • اكتب جميع الأوامر التي يجب تنفيذها، واحفظ الملف.

لا يزال من الممكن كتابة البرامج النصية وتحريرها في FAR Manager، لكن لا يمكن استخدامها مباشرة في مثل هذا التطبيق، لأنه يعرض ملفات من هذا النوع من خلال سطر cmd القياسي. ومع ذلك، يتم تنفيذ الإجراءات الأخرى بنفس الطريقة كما في الأداة المساعدة "الأصلية".

يمكنك تشغيل البرنامج النصي بهذه الطريقة:

  1. قم بتسجيل الدخول إلى PowerShell كمسؤول.
  2. استخدم أوامر القرص المضغوط لتحديد موقع الملف المطلوب. على سبيل المثال، البريد: cd\ cd العمل .\ اسم الملف. PS1، أو البريد الإلكتروني: \work\filename.ps1
  3. في هذه الحالة، e: هو اسم القرص الصلب الذي يوجد به الملف.
  4. اضغط دخول.

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

كيف؟ سيوصيك النص الذي يظهر مع الخطأ بإدخال الأمر get-help about_signing للحصول على مزيد من المعلومات. يمكنك اتباع هذه التعليمات، أو استخدام مجموعة Set-ExecutionPolicy الموقعة عن بعد - بعد إدخالها، ستكون هناك حاجة إلى التأكيد، وستتم إزالة التقييد.

أسئلة أخرى حول الاستخدام

لدى الكثير من الأشخاص سؤال: كيف يمكنك معرفة إصدار PowerShell؟ للقيام بذلك، قم بما يلي:

  1. أدخل $PSVersionTable.
  2. إذا لم يؤد هذا إلى أي شيء، فلديك الإصدار 1.0 - ويوجد أمر $host.version له.
  3. خلاف ذلك، ستظهر معلومات مفصلة حول إصدار التطبيق المثبت على جهاز الكمبيوتر.

1. كتابة السيناريو

البرنامج النصي PowerShell (بغض النظر عن الإصدار) هو ملف نصي بامتداد *.ps1.

فيما يلي مثال لبرنامج Power Shell النصي البسيط (ملف systemInfo.ps1):

# استرداد كائن WMI لنظام التشغيل

الحصول على WmiObject Win32_OperatingSystem

يمكن إنشاء هذا الملف وتحريره، على سبيل المثال، في FAR Manager.

ملحوظةأن FAR Manager، على الرغم من أنه يمكن أن يعمل في وحدة تحكم Power Shell، يقوم بتنفيذ البرامج النصية من تحت نفسه في بيئة وحدة تحكم Windows عاديةكمد . أي أنه لا يمكن استخدام FAR Manager إلا لإنشاء البرامج النصية لـ PowerShell وتحريرها، وليس لتشغيلها. ولكن قبل أن تشعر بخيبة الأمل، اقرأ النقطة 3.

2. تشغيل البرنامج النصي

يجب تنفيذ البرنامج النصي من وحدة تحكم Power Shell، وليس من وحدة تحكم Windows العادية. في وحدة تحكم Power Shell، تحتاج إلى الانتقال إلى الدليل الذي يوجد به البرنامج النصي (باستخدام الأوامرقرص مضغوط )، ثم قم بتشغيل البرنامج النصي نفسه، مع التأكد من تضمين الأحرف الموجودة أمامه".\" . على سبيل المثال، لدينا المسار إلى ملف البرنامج النصيد:\work\systemInfo.ps1 . ثم ستبدو أوامر الإطلاق كما يلي:

مؤتمر نزع السلاح\

عمل القرص المضغوط

.\systemInfo.ps1

أو مثل هذا (فقط حدد المسار الكامل للبرنامج النصي):

د:\work\systemInfo.ps1

على الأرجح، سيظهر الخطأ التالي عند تشغيل البرنامج النصي:

لا يمكن تحميل الملف D:\work\systemInfo.ps1 لأن تنفيذ البرنامج النصي غير مسموح به على هذا النظام. اكتب "الحصول على مساعدة about_signing" لمزيد من المعلومات.

السطر: 1 حرف: 18

معلومات الفئة: NotSpecified: (:)، PSSecurityException

معرف الخطأ الكامل: RuntimeException

يظهر الخطأ لأنه افتراضيًا، يتم تمكين سياسة الأمان القصوى في Power Shell، والتي تسمح لك بتشغيل أوامر PowerShell في سطر الأوامر، ولكنها لا تسمح لك بتشغيل برنامج نصي باستخدام أوامر PowerShell في نفس سطر الأوامر.

لتمكين تنفيذ البرامج النصية PowerShell، تحتاج إلى إنشاء ملف *.bat، على سبيل المثال EnableScript.bat بالمحتوى التالي:

بوويرشيل -Command Set-ExecutionPolicy RemoteSigned

يمكن تنفيذ ملف *.bat هذا في أي وحدة تحكم: إما في PowerShell أو في وحدة تحكم عاديةكمد . بعد تنفيذ هذا الملف، سيتم تشغيل البرامج النصية لـ PowerShell في وحدة تحكم PowerShell.

3. تشغيل برنامج PowerShell النصي من وحدة تحكم Windows cmd عادية

يمكن أيضًا تنفيذ البرنامج النصي PowerShell من وحدة تحكم Windows عادية. للقيام بذلك يمكنك استخدام الأمر:

بوويرشيل -ملف ./systemInfo.ps1

بهذه الطريقة يمكنك تنفيذ البرامج النصية مباشرة من FAR Manager وستعمل.

ولكن هناك دقة طفيفة هنا. معامل-ملف يتم تشغيله فقط على المسارات المحلية، حتى لو كان المسار نسبيًا"./" . وهذا هو، إذا كان *.ps1 - الملف موجود على القرص المحليج: أو د: ، فستعمل مثل هذه المكالمة. ولكن إذا حاولت تنفيذ برنامج نصي موجود على مورد المجال، فلن يتم العثور على البرنامج النصي. ربما سيتم إصلاح ذلك في الإصدارات المستقبلية من PowerShell.