Innehåll
Deexec familj med funktioner ersätter den aktuella processbilden med en ny processbild. Funktionerna som beskrivs här är frontändarna för funktionenexecve(2).
Det första argumentet för dessa funktioner är söknamnet på en fil som ska köras.
Deconst char * arg och efterföljande ellipser iexecl, execlp, ochexecle funktioner kan betraktas somarg0, arg1, ..., argN. Tillsammans beskriver de en lista med en eller flera pekare på noll-avslutade strängar som representerar argumentlistan tillgänglig för det körda programmet. Det första argumentet, enligt konvention, bör peka på filnamnet associerat med filen som körs. Listan med argumentmåste avslutas med aNULL pekare.
Deexecv ochexecvp funktioner tillhandahåller en rad pekare till nollavslutade strängar som representerar argumentlistan tillgänglig för det nya programmet. Det första argumentet, enligt konvention, bör peka på filnamnet associerat med filen som körs. Utbudet av pekaremåste avslutas med aNULL pekare.
Deexecle funktionen specificerar också miljön för den exekverade processen genom att följaNULLpekaren som avslutar listan med argument i parameterlistan eller pekaren till argv-arrayen med en ytterligare parameter. Denna ytterligare parameter är en rad pekare till nollavslutade strängar ochmåste avslutas med aNULL pekare. De andra funktionerna tar miljön för den nya processbilden från den externa variabelnenviron i den aktuella processen.
Vissa av dessa funktioner har speciell semantik.
Funktionernaexeclp ochexecvp kommer att duplicera skalens handlingar när du söker efter en körbar fil om det angivna filnamnet inte innehåller ett snedstreck (/) -tecken. Sökvägen är den sökväg som anges i miljön avVÄG variabel. Om denna variabel inte anges, används standardvägen `: / bin: / usr / bin ''. Dessutom behandlas vissa fel speciellt.
Om tillstånd nekas för en fil (det försökteexecve returneradEACCES), fortsätter dessa funktioner att söka resten av sökvägen. Om ingen annan fil hittas kommer de emellertid tillbaka med den globala variabelnFelkod satt tillEACCES.
Om rubriken på en fil inte känns igen (det försökteexecve returneradENOEXEC), kommer dessa funktioner att köra skalet med filens sökväg som sitt första argument. (Om detta försök misslyckas görs ingen ytterligare sökning.)
Returvärde
Om någon avexec funktioner återgår, ett fel har inträffat. Avkastningsvärdet är -1 och den globala variabelnFelkod kommer att ställas in för att indikera felet.
Användman kommando (% man) för att se hur ett kommando används på din dator.
namn
execl, execlp, execle, execv, execvp - kör en fil
Synopsis
#omfatta extern char ** miljö; int execl (const char *väg, const char *arg, ...); int execlp (const char *fil, const char *arg, ...); int execle (const char *väg, const char *arg , ..., char * constenvp[]); int execv (const char *väg, char * constargv[]); int execvp (const char *fil, char * constargv[]);