انتظر (أمر)

في أنظمة يونكس ، هو أمر يقوم بالتوقف مؤقتًا حتى ينتهي تنفيذ عملية الخلفية .wait

الاستخدام

انتظر [ ن... ]

حيث n... هي قائمة بمعرفات العمليات ( PIDs ) أو معرفات المهام (Job IDs) لعملية خلفية قيد التنفيذ حاليًا. إذا لم يتم توفير أي معرفات، ينتظر الأمر حتى تنتهي جميع المهام المعروفة للصدفة المُستدعِية.

عادةً ما تُعيد الدالة wait حالة إنهاء آخر مهمة انتهت. وقد تُعيد أيضًا القيمة 127 في حال تحديد n لمهمة غير موجودة، أو القيمة صفر إذا لم تكن هناك مهام للانتظار.

لأنه waitيجب أن يكون على دراية بجدول المهام لبيئة تنفيذ الصدفة الحالية. وبموجب مواصفات POSIX، يُشترط أن يكون جزءًا مدمجًا من الصدفة . [ 1 ]

مثال

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

سيقوم المثال التالي بجلب دليل src/ من جهاز يسمى iona باستخدام rsync وتحديث المكتبات التي يعتمد عليها هذا البرنامج في نفس الوقت، قبل بناء التركيبة.

#!/usr/bin/env bash# برنامج تحديث متوازي يستخدم أمر الانتظار# تحديث النسخة المحلية rsync iona:src/ . & # ترقية المكتبات المطلوبة، أو الخروج مع الإشارة إلى الفشل إذا فشل make لسبب ما make -C lib || exit 1# انتظر حتى ينتهي rsync (ربما يكون قد انتهى بالفعل) وأكمل المهمة . يصنع 

انتظر حتى يتم تحديد رقم تعريف التحكم في المهمة:

$ ls -R / > /dev/null 2 ​​> & 1 & # بدء أي عملية خلفية طويلة الأمد [ 2 ] 1986 $ wait %2 # ينتظر انتهاء المهمة الخلفية رقم 2، ثم يعود

انظر أيضاً

مراجع

  1. "مواصفات المجموعة المفتوحة الأساسية، الإصدار 8" . المجموعة المفتوحة. 2024. مؤرشف من الأصل في 18 مايو 2025. تم الاطلاع عليه في 14 مايو 2025 .