Saturs
izpild funkciju saime pašreizējo procesa attēlu aizstāj ar jaunu procesa attēlu. Šeit aprakstītās funkcijas ir funkcijas priekšpusēizpildīt(2).
Sākotnējais šo funkciju arguments ir izpildāmā faila ceļa nosaukums.
const char * arg un sekojošās elipsesizpildīt, izpildīt, unvingrinājums funkcijas var uzskatīt pararg0, arg1, ..., argn. Kopā viņi apraksta sarakstu ar vienu vai vairākiem norādījumiem uz nulles izbeigtām virknēm, kas apzīmē izpildāmajai programmai pieejamo argumentu sarakstu. Pirmajam argumentam pēc vienošanās vajadzētu norādīt uz faila nosaukumu, kas saistīts ar izpildāmo failu. Argumentu sarakstsobligāti jāizbeidz arNULL rādītājs.
izpild unizpild funkcijas nodrošina virkni nulles izbeigtu virkņu rādītāju, kas apzīmē jauno programmu pieejamo argumentu sarakstu. Pirmajam argumentam pēc vienošanās vajadzētu norādīt uz faila nosaukumu, kas saistīts ar izpildāmo failu. Norādījumu klāstsobligāti jāizbeidz arNULL rādītājs.
vingrinājums funkcija arī norāda izpildītā procesa vidi, sekojotNULLrādītājs, kas pārtrauc argumentu sarakstu parametru sarakstā, vai rādītājs argv masīvam ar papildu parametru. Šis papildu parametrs ir masīvs, kas norāda norādes uz nulles izbeigtām virknēm unobligāti jāizbeidz arNULL rādītājs. Pārējās funkcijas ņem vidi jaunā procesa attēlam no ārējā mainīgāvide pašreizējā procesā.
Dažām no šīm funkcijām ir īpaša semantika.
Funkcijasizpildīt unizpild dublēs čaulas darbības, meklējot izpildāmo failu, ja norādītajā faila nosaukumā nav slīpsvītru (/) rakstzīmes. Meklēšanas ceļš ir ceļš, kuru vidē norādījisPATH mainīgs. Ja šis mainīgais nav norādīts, tiek izmantots noklusējuma ceļš ``: / bin: / usr / bin ''. Turklāt noteiktas kļūdas tiek apstrādātas speciāli.
Ja failam tiek liegta atļauja (mēģinājumsizpildīt atgriezāsEACCES), šīs funkcijas turpinās meklēt atlikušo meklēšanas ceļu. Ja tomēr neviens cits fails netiek atrasts, tie atgriezīsies ar globālo mainīgoerrno iestatīts uzEACCES.
Ja faila galvene netiek atpazīta (mēģinājumsizpildīt atgriezāsENOEXEC), šīs funkcijas izpildīs apvalku ar faila ceļu kā pirmo argumentu. (Ja šis mēģinājums neizdodas, tālāk meklēšana netiek veikta.)
Atgriešanās vērtība
Ja kāds noizpild funkcijas atgriežas, būs radusies kļūda. Atgriešanās vērtība ir -1 un globālais mainīgaiserrno tiks iestatīts, lai norādītu kļūdu.
Izmantojietcilvēks komanda (% vīrietis), lai redzētu, kā komanda tiek izmantota jūsu datorā.
Vārds
izpildīt, izpildīt, izpildīt, izpildīt, izpildīt - izpildīt failu
Kopsavilkums
# iekļaut ārējā char ** vide; int execl (const char *ceļš, const char *arg, ...); int execlp (const char *failu, const char *arg, ...); int izpildījums (const char *ceļš, const char *arg , ..., char * constenvp[]); int izpildījums (const char *ceļš, char * constargv[]); int execvp (const char *failu, char * constargv[]);