Tarkib
Theqatl funktsiyalar turkumi joriy jarayon tasvirini yangi jarayon tasviriga almashtiradi. Bu erda tavsiflangan funktsiyalar funktsiyaning old tomonlariijro eting(2).
Ushbu funktsiyalar uchun dastlabki argument bajarilishi kerak bo'lgan faylning nomi.
Theconst char * arg va undan keyingi ellipsexecl, execlp, vaijro qilmoq vazifalari sifatida o'ylash mumkinarg0, arg1, ..., argn. Birgalikda ular bajarilgan dasturda mavjud bo'lgan argumentlar ro'yxatini ifodalaydigan nol bilan tugagan satrlarga bir yoki bir nechta ko'rsatkichlar ro'yxatini tasvirlaydi. Birinchi argument, konventsiyaga ko'ra, bajarilayotgan fayl bilan bog'liq fayl nomini ko'rsatishi kerak. Dalillar ro'yxatikerak tomonidan to'xtatilishi mumkinNULL ko'rsatgich.
Theexecv vaexecvp funktsiyalari yangi dastur uchun mavjud bo'lgan argumentlar ro'yxatini ifodalovchi null bilan tugagan satrlarga bir qator ko'rsatkichlarni beradi. Birinchi argument, konventsiyaga ko'ra, bajarilayotgan fayl bilan bog'liq fayl nomini ko'rsatishi kerak. Ko'rsatkichlar qatorikerak tomonidan to'xtatilishi mumkinNULL ko'rsatgich.
Theijro qilmoq funktsiya shuningdek quyidagilar orqali bajarilgan jarayonning muhitini belgilaydiNULLParametrlar ro'yxatidagi argumentlar ro'yxatini yoki argv massiviga qo'shimcha parametr bilan ko'rsatgichni tugatuvchi ko'rsatkich. Ushbu qo'shimcha parametr nol bilan tugagan satrlarni va ko'rsatgichlar qatoridirkerak tomonidan to'xtatilishi mumkinNULL ko'rsatgich. Qolgan funktsiyalar tashqi o'zgaruvchidan yangi jarayon tasviri uchun muhitni oladimuhit hozirgi jarayonda.
Ushbu funktsiyalarning ba'zilari maxsus semantikaga ega.
Vazifalariexeclp vaexecvp ko'rsatilgan fayl nomida egri chiziq (/) belgisi bo'lmasa, bajariladigan faylni qidirishda qobiqning harakatlarini takrorlaydi. Qidiruv yo'li - bu atrof-muhit tomonidan belgilangan yo'lPATH o'zgaruvchan. Agar bu o'zgaruvchi belgilanmagan bo'lsa, asl yo'li ``: / bin: / usr / bin '' ishlatiladi. Bunga qo'shimcha ravishda, ba'zi xatolar maxsus davolanadi.
Agar faylga ruxsat rad etilgan bo'lsa (urinib ko'rilgan)ijro eting qaytdiEACCES), ushbu funktsiyalar qidirish yo'lining qolgan qismini qidirishda davom etadi. Agar boshqa fayl topilmasa, ammo ular global o'zgaruvchiga qaytadierrno ga sozlanganEACCES.
Agar faylning sarlavhasi tan olinmasa (urinish)ijro eting qaytdiENOEXEC), bu funktsiyalar qobiqni faylning yo'li bilan birinchi argument sifatida bajaradi. (Agar ushbu urinish bajarilmasa, boshqa qidirish amalga oshirilmaydi.)
Qaytish qiymati
Agar biron bir bo'lsaqatl vazifalar qaytadi, xato yuzaga keladi. Qaytish qiymati -1 va global o'zgaruvchidirerrno xatoni ko'rsatadigan o'rnatiladi.
Dan foydalaningkishi buyruq (% kishi) buyrug'i sizning shaxsiy kompyuteringizda qanday ishlatilishini ko'rish uchun.
Ism
execl, execlp, execle, execv, execvp - faylni bajaring
Tezis
# o'z ichiga oling ex char ** environ; int execl (const char *)yo'l, const char *arg, ...); int execlp (const char *fayl, const char *arg, ...); int execle (const char *)yo'l, const char *arg , ..., char * constenvp[]); int execv (const char *yo'l, char * constargv[]); int execvp (const char *fayl, char * constargv[]);