المحتوى
الاكسيك مجموعة الوظائف تستبدل صورة العملية الحالية بصورة عملية جديدة. الوظائف الموضحة هنا هي الواجهات الأمامية للدالةتنفيذ(2).
الحجة الأولية لهذه الوظائف هي اسم مسار الملف الذي سيتم تنفيذه.
الالوسيطة char * arg وعلامات الحذف اللاحقة فيexecl, execlpواكسل يمكن اعتبار وظائفarg0, arg1, ..., يجادل. يصفون معًا قائمة بمؤشر واحد أو أكثر إلى سلاسل منتهية بقيمة خالية والتي تمثل قائمة الوسيطات المتاحة للبرنامج الذي تم تنفيذه. يجب أن تشير الوسيطة الأولى ، حسب الاصطلاح ، إلى اسم الملف المرتبط بالملف الجاري تنفيذه. قائمة الحججيجب يتم إنهاء بواسطة ألا شيء المؤشر.
الexecv وexecvp توفر الدالات صفيفًا من المؤشرات إلى سلاسل منتهية بقيمة خالية null تمثل قائمة الوسيطات المتاحة للبرنامج الجديد. يجب أن تشير الوسيطة الأولى ، حسب الاصطلاح ، إلى اسم الملف المرتبط بالملف الجاري تنفيذه. صفيف المؤشراتيجب يتم إنهاء بواسطة ألا شيء المؤشر.
الاكسل تحدد الوظيفة أيضًا بيئة العملية المنفذة باتباع الخطوات التاليةلا شيءالمؤشر الذي ينهي قائمة الوسائط في قائمة المعلمات أو المؤشر إلى مصفوفة argv بمعلمة إضافية. هذه المعلمة الإضافية عبارة عن صفيف من المؤشرات إلى سلاسل منتهية بقيمة خالية ويجب يتم إنهاء بواسطة ألا شيء المؤشر. تأخذ الوظائف الأخرى البيئة لصورة العملية الجديدة من المتغير الخارجيالبيئة في العملية الحالية.
بعض هذه الوظائف لها دلالات خاصة.
وظائفexeclp وexecvp سوف يكرر إجراءات shell في البحث عن ملف قابل للتنفيذ إذا كان اسم الملف المحدد لا يحتوي على حرف مائل (/). مسار البحث هو المسار المحدد في البيئة بواسطةمسار متغير. إذا لم يتم تحديد هذا المتغير ، فسيتم استخدام المسار الافتراضي ``: / bin: / usr / bin ''. بالإضافة إلى ذلك ، يتم التعامل مع بعض الأخطاء بشكل خاص.
إذا تم رفض الإذن لملف (المحاولةتنفيذ عاداياكس) ، ستواصل هذه الوظائف البحث في بقية مسار البحث. إذا لم يتم العثور على ملف آخر ، فسيعودون مع المتغير العامتخطئ ضبط لاياكس.
إذا لم يتم التعرف على رأس الملف (المحاولةتنفيذ عادENOEXEC) ، ستقوم هذه الدالات بتنفيذ shell بمسار الملف كوسيطة أولى. (إذا فشلت هذه المحاولة ، فلن يتم إجراء المزيد من البحث.)
قيمة الإرجاع
إذا كان أي مناكسيك ترجع الدالات ، سيحدث خطأ. القيمة المرجعة هي -1 ، والمتغير العامتخطئ سيتم تعيين للإشارة إلى الخطأ.
استخدم الرجل أمر (٪ رجل) لمعرفة كيفية استخدام الأمر على جهاز الكمبيوتر الخاص بك.
اسم
execl ، execlp ، execle ، execv ، execvp - تنفيذ ملف
الخلاصة
#تضمن char extern ** environ؛ int execl (const char *مسار، كون تشار *الارجاع، ...) ؛ int execlp (con char *ملف، كون تشار *الارجاع، ...) ؛ int execle (con char *مسار، كون تشار *الارجاع ، ...، char * constيحسد[]) ؛ int execv (const char *مسار، char * constargv[]) ؛ int execvp (con char *ملف، char * constargv[]);