Sunday 11 March 2018

بدء عملية بويرشيل ويتوفوريكسيت


بدء العملية بويرشيل ويتوفوريكسيت
الحصول على فيا أب ستور قراءة هذه المشاركة في التطبيق لدينا!
كيف أقول بويرشيل لانتظار كل أمر لإنهاء قبل البدء في المرة القادمة؟
لدي البرنامج النصي بويرشيل 1.0 لفتح مجرد مجموعة من التطبيقات. الأول هو آلة افتراضية والبعض الآخر هي تطبيقات التطوير. أريد الجهاز الظاهري لإنهاء تمهيد قبل أن يتم فتح بقية التطبيقات.
في باش يمكنني القول فقط "cmd1 & أمب؛ cmd2"
هذا هو ما لدي.
عادة، للأوامر الداخلية بويرشيل لا تنتظر قبل بدء الأمر التالي. استثناء واحد من هذه القاعدة هو إيكس نظام فرعي خارجي يستند إلى ويندوز. خدعة الأولى هي لخط أنابيب إلى خارج نول مثل ذلك:
ستنتظر بويرشيل حتى يتم إنهاء عملية Notepad. exe قبل المتابعة. هذا هو أنيق ولكن نوع من خفية لالتقاط من قراءة التعليمات البرمجية. يمكنك أيضا استخدام بدء العملية مع المعلمة - Wait:
إذا كنت تستخدم إصدار ملحقات المجتمع بويرشيل فهو:
خيار آخر في بويرشيل 2.0 هو استخدام وظيفة الخلفية:
إلى جانب استخدام بدء عملية - Wait، الأنابيب الناتج من قابل للتنفيذ سيجعل بويرشيل الانتظار. اعتمادا على الحاجة، وسوف عادة الأنابيب إلى خارج نول، خارج الافتراضي، خارج سلسلة أو خارج سلسلة - Stream. وفيما يلي قائمة طويلة من بعض خيارات الإخراج الأخرى.
لا أفتقد مشغلي نمط سمد / باش التي أشير إليها (& أمب؛ & أمب؛ & أمب ؛، ||). يبدو أننا يجب أن نكون أكثر تطويقا مع بويرشيل.
مجرد استخدام "انتظر العملية":
إذا كنت تستخدم ستارت-بروسيس & لوت؛ باث تو إيكس & غ؛ - NoNewWindow - Wait.
يمكنك أيضا استخدام الخيار - PassThru لصدى الإخراج.
بعض البرامج لا يمكن معالجة تيار الإخراج بشكل جيد جدا، واستخدام الأنابيب إلى خارج نول قد لا يمنع ذلك.
وبدء عملية يحتاج التبديل - ArgumentList لتمرير الوسيطات، وليس مريحة جدا.
وهناك أيضا نهج آخر.
بما في ذلك الخيار - NoNewWindow يعطيني خطأ: بدء العملية: لا يمكن تنفيذ هذا الأمر بسبب الخطأ: تم رفض الوصول.

بدء العملية بويرشيل ويتوفوريكسيت
الحصول على فيا أب ستور قراءة هذه المشاركة في التطبيق لدينا!
باستخدام بدء عملية وأمر - wait في بويرشيل.
أنا جديد على بويرشيل وليس لديهم الكثير من خلفية البرمجة، مجرد محاولة لاستخدامه لتغليف البرمجيات. على أي حال، لقد اكتشفت حول الأمر بدء العملية مع المعلمة - Wait، وأنها تعمل كبيرة لمعظم الأشياء. ما لاحظته على الرغم من ذلك هو أنه لا ينتظر فقط للعملية التي تحددها، فإنه ينتظر لأية عمليات فرعية، حتى بعد العملية الرئيسية لم تعد قيد التشغيل. عادة هذا أمر جيد، ولكن لدي حالة غريبة. أنا تشغيل ملف دفعة أوراكل معقدة مع بدء العملية. ملف الدفعي في نهاية المطاف تشغيل setup. exe وهو ما أريد حقا أن تنتظر، ولكن العمليات الأخرى تفرخ أيضا أن تتوقف أبدا. حتى إذا كنت تستخدم المعلمة - wait، البرنامج النصي أبدا يتوقف حتى بعد setup. exe لم يعد قيد التشغيل. أقرب ما عثرت عليه هو استخدام هذا:
هذا يعمل، ولكن أعتقد أن يكون هناك طريقة أفضل دون الحاجة إلى استخدام أمر مهلة. أيه أفكار؟

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

بدء عملية.
في هذه المادة.
وصف.
يبدأ كمدليت بدء التشغيل عملية واحدة أو أكثر على الكمبيوتر المحلي. لتحديد البرنامج الذي يتم تشغيله في العملية، قم بادخال ملف قابل للتنفيذ أو ملف البرنامج النصي، أو ملف يمكن فتحه باستخدام برنامج على الكمبيوتر. اذا قمت بتحديد ملف غير قابل للتنفيذ، ستارت-بروسيس يبدأ البرنامج المقترن بالملف، على غرار كمدليت إنفوك-إيتم.
يمكنك استخدام معلمات بدء العملية لتحديد الخيارات، مثل تحميل ملف تعريف المستخدم أو بدء العملية في نافذة جديدة أو استخدام بيانات اعتماد بديلة.
مثال 1: بدء عملية تستخدم القيم الافتراضية.
يبدأ هذا الأمر عملية يستخدم ملف Sort. exe في المجلد الحالي. يستخدم الأمر كافة القيم المفترضة، بما في ذلك نمط الإطار المفترض ومجلد العمل وبيانات الاعتماد.
مثال 2: طباعة ملف نصي.
يبدأ هذا الأمر عملية التي تقوم بطباعة ملف C: \ بس-تيست \ MyFile. txt.
مثال 3: بدء عملية لفرز العناصر إلى ملف جديد.
يبدأ هذا الأمر عملية فرز العناصر في ملف Testsort. txt وإرجاع العناصر التي تم فرزها في ملفات Sorted. txt. تتم كتابة أية أخطاء إلى الملف SortError. txt.
تحدد المعلمة وسينونفيرونم أن العملية تعمل مع متغيرات البيئة الخاصة بها.
مثال 4: بدء عملية في نافذة أكبر.
يبدأ هذا الأمر عملية المفكرة. فإنه يزيد من النافذة ويحافظ على نافذة حتى اكتمال العملية.
مثال 5: بدء تشغيل ويندوز بويرشيل كمسؤول.
يبدأ هذا الأمر ويندوز بويرشيل باستخدام الخيار تشغيل كمسؤول.
مثال 6: استخدام الأفعال المختلفة لبدء عملية.
تظهر هذه الأوامر كيفية العثور على الأفعال التي يمكن استخدامها عند بدء العملية، وتأثير استخدام الأفعال لبدء العملية.
يتم تحديد الأفعال المتاحة بواسطة ملحق اسم الملف من الملف الذي يتم تشغيله في العملية. للعثور على الأفعال لعملية إنشاء كائن System. Diagnostics. ProcessStartInfo لملف العملية والبحث في الخاصية فيربس الكائن. يستخدم هذا المثال الملف PowerShell. exe الذي يتم تشغيله في عملية بويرشيل.
يستخدم الأمر الأول كائن جديد لإنشاء كائن System. Diagnostics. ProcessStartInfo ل PowerShell. exe، الملف الذي يتم تشغيله في عملية بويرشيل. الأمر يحفظ كائن بروسيسستارتينفو في المتغير $ ستيكس.
يعرض الأمر الثاني القيم في الخاصية فيربس الكائن بروسيسستارتينفو في المتغير $ ستيكس. تظهر النتائج أنه يمكنك استخدام الأفعال المفتوحة و روناس مع PowerShell. exe، أو مع أي عملية تشغيل ملف. exe.
يبدأ الأمر الثالث عملية بويرشيل مع الفعل المفتوح. يبدأ الفعل المفتوح العملية في إطار وحدة تحكم جديدة.
الأمر الرابع يبدأ عملية بويرشيل مع الفعل روناس. يبدأ تشغيل روناس العملية بأذونات عضو من مجموعة المسؤولين على الكمبيوتر. هذا هو نفس بدء تشغيل ويندوز بويرشيل باستخدام الخيار تشغيل كمسؤول.
مثال 7: تحديد الوسيطات للعملية.
كلا الأمرين بدء مترجم الأوامر ويندوز، إصدار أمر دير على & # 39؛ ملفات البرنامج & # 39؛ مجلد. نظرا لأن اسم المجلد هذا يحتوي على مسافة، فسيتم إحاطة القيمة بالاقتباسات المنبثقة. لاحظ أن الأمر الأول يحدد سلسلة ك أرغمنتليست. الأمر الثاني مصفوفة سلسلة.
المعلمات المطلوبة.
لتحديد المسار الاختياري واسم الملف الخاص بالبرنامج الذي يتم تشغيله في العملية. أدخل اسم ملف قابل للتنفيذ أو مستند، مثل ملف. txt أو. doc المقترن ببرنامج على الكمبيوتر. هذه المعلمة مطلوبة.
إذا قمت بتحديد اسم ملف فقط، استخدم المعلمة وركينغديركتوري لتحديد المسار.
المعلمات الاختيارية.
لتحديد المعلمات أو قيم المعلمات لاستخدامها عند بدء هذا كمدليت العملية. إذا كانت المعلمات أو قيم المعلمة تحتوي على مسافة، فإنها تحتاج محاطة مع يقتبس مزدوجة الهروب.
لتحديد حساب مستخدم لديه إذن لتنفيذ هذا الإجراء. اكتب اسم مستخدم، مثل User01 أو Domain01 \ User01، أو أدخل كائن بسدريدينتيال، مثل واحد من كمدليت الحصول على الاعتماد. بشكل افتراضي، يستخدم كمدليت بيانات اعتماد المستخدم الحالي.
يشير إلى أن هذا كمدليت بتحميل ملف تعريف المستخدم ويندوز المخزنة في مفتاح التسجيل HKEY_USERS للمستخدم الحالي.
لا تؤثر هذه المعلمة على ملفات تعريف ويندوز بويرشيل. لمزيد من المعلومات، اطلع على about_Profiles.
بدء العملية الجديدة في إطار وحدة التحكم الحالية. ويندوز بويرشيل افتراضيا يفتح نافذة جديدة.
لا يمكنك استخدام معلمات نونويندو و ويندوستيل في نفس الأمر.
لعرض كائن عملية لكل عملية بدأ كمدليت. بشكل افتراضي، لا يقوم هذا كمدليت بإنشاء أي إخراج.
لتحديد ملف. هذا كمدليت بإرسال أية أخطاء تم إنشاؤها بواسطة العملية إلى ملف تحدده. أدخل المسار واسم الملف. افتراضيا، يتم عرض الأخطاء في وحدة التحكم.
لتحديد ملف. يقرأ هذا كمدليت الإدخال من الملف المحدد. أدخل المسار واسم ملف ملف الإدخال. بشكل افتراضي، تحصل العملية على مدخلاتها من لوحة المفاتيح.
لتحديد ملف. يقوم كمدليت بإرسال الإخراج الذي تم إنشاؤه بواسطة العملية إلى ملف تحدده. أدخل المسار واسم الملف. بشكل افتراضي، يتم عرض الإخراج في وحدة التحكم.
يشير إلى أن هذا كمدليت يستخدم متغيرات بيئة جديدة محددة للعملية. افتراضيا، يتم تشغيل العملية التي تم تشغيلها مع متغيرات البيئة المحددة للكمبيوتر والمستخدم.
يحدد فعلا لاستخدام عند بدء هذا كمدليت العملية. يتم تحديد الأفعال المتوفرة من قبل ملحق اسم الملف من الملف الذي يتم تشغيله في العملية.
يوضح الجدول التالي الأفعال لبعض أنواع ملفات العمليات الشائعة.
للعثور على الأفعال التي يمكن استخدامها مع الملف الذي يتم تشغيله في عملية استخدام كمدليت كائن جديد لإنشاء كائن System. Diagnostics. ProcessStartInfo للملف. الأفعال المتاحة في خاصية الأفعال الكائن بروسيسستارتينفو. لمزيد من التفاصيل، راجع الأمثلة.
يشير إلى أن هذا كمدليت ينتظر العملية المحددة لإكمال قبل قبول المزيد من المدخلات. تقوم هذه المعلمة بقمع موجه الأوامر أو الاحتفاظ بالنافذة حتى انتهاء العملية.
لتحديد حالة النافذة المستخدمة للعملية الجديدة. القيم المقبولة لهذه المعلمة هي: نورمال، هيدن، مينيميزد، أند ماكسيميزد. القيمة الافتراضية هي نورمال.
لا يمكنك استخدام معلمات ويندوستيل و نوويندو في نفس الأمر.
لتحديد موقع الملف القابل للتنفيذ أو المستند الذي يتم تشغيله في العملية. الافتراضي هو مجلد العملية الجديدة.

الانتظار العملية.
في هذه المادة.
وصف.
ينتظر كمدليت الانتظار عملية واحد أو أكثر من العمليات قيد التشغيل قبل قبول المدخلات. في وحدة تحكم ويندوز بويرشيل، هذا كمدليت يقمع موجه الأوامر حتى يتم إيقاف العمليات. يمكنك تحديد عملية بواسطة اسم العملية أو معرف العملية (بيد)، أو نقل كائن عملية إلى عملية الانتظار.
عملية الانتظار يعمل فقط على العمليات التي تعمل على الكمبيوتر المحلي.
مثال 1: إيقاف عملية وانتظار.
يؤدي هذا المثال إلى إيقاف عملية المفكرة ثم ينتظر إيقاف العملية قبل أن تستمر مع الأمر التالي.
يستخدم الأمر الأول كمدليت جيت-بروسيس للحصول على معرف عملية المفكرة. فإنه يخزن إد في متغير نيد $.
يستخدم الأمر الثاني كمدليت إيقاف العملية لإيقاف العملية مع معرف المخزنة في نيد $.
يستخدم الأمر الثالث ويت-بروسيس الانتظار حتى يتم إيقاف عملية المفكرة. ويستخدم المعرف إد من عملية الانتظار لتحديد العملية.
مثال 2: تحديد عملية.
تظهر هذه الأوامر ثلاث طرق مختلفة لتحديد عملية لعملية الانتظار. يحصل الأمر الأول على عملية المفكرة ويخزنها في المتغير $ p.
يستخدم الأمر الثاني معلمة إد، يستخدم الأمر الثالث معلمة الاسم، ويستخدم الأمر الرابع المعلمة إنبوبوبجيكت.
هذه الأوامر لها نفس النتائج ويمكن استخدامها بالتبادل.
مثال 3: انتظر العمليات لوقت محدد.
ينتظر هذا الأمر 30 ثانية من أجل إيقاف عمليات أوتلوك و وينورد. إذا لم يتم إيقاف كل من العمليات، يعرض كمدليت خطأ غير إنهاء والموجه الأوامر.
المعلمات المطلوبة.
يحدد معرفات العملية للعمليات. لتحديد معرفات متعددة، استخدم الفواصل لفصل المعرفات. للعثور على بيد لعملية ما، اكتب جيت-بروسيس.
لتحديد العمليات عن طريق إرسال كائنات العملية. أدخل متغيرا يحتوي على كائنات العملية أو اكتب أمر أو تعبير يحصل على كائنات العملية مثل كمدليت جيت-بروسيس.
لتحديد أسماء العمليات للعمليات. لتحديد أسماء متعددة، استخدم الفواصل لفصل الأسماء. لا يتم اعتماد أحرف البدل.
المعلمات الاختيارية.
يحدد الحد الأقصى للوقت، بالثواني، الذي ينتظره كمدليت حتى تتوقف العمليات المحددة. عند انتهاء هذه الفاصل الزمني يعرض الأمر خطأ غير إنهاء يسرد العمليات التي لا تزال قيد التشغيل وينتهي الانتظار. افتراضيا، لا يوجد مهلة.

No comments:

Post a Comment