Software-Ul

Comanda Linux / Unix „execvp”

Autor: Robert Simon
Data Creației: 22 Iunie 2021
Data Actualizării: 12 Mai 2024
Anonim
How to fix gcc: fatal error, No such file or directory | Install GCC and compile code terminal.
Video: How to fix gcc: fatal error, No such file or directory | Install GCC and compile code terminal.

Conţinut

Exec familia de funcții înlocuiește imaginea procesului curent cu o nouă imagine de proces. Funcțiile descrise aici sunt front-end-uri pentru funcțieexecve(2). 

Argumentul inițial pentru aceste funcții este numele de fișier care urmează să fie executat.

const char * arg și elipsele ulterioare înexeclexeclp, șiexecle funcțiile pot fi gândite caarg0ARG1, ..., argn. Împreună, ele descriu o listă a unuia sau mai multor indicii către șiruri cu terminare nulă care reprezintă lista de argumente disponibile programului executat. Primul argument, prin convenție, trebuie să indice numele fișierului asociat cu fișierul în curs de execuție. Lista argumentelortrebuie sa să fie încheiat de aNUL pointer.


execv șiexecvp funcțiile oferă o serie de indicatoare către șiruri cu terminare nulă care reprezintă lista de argumente disponibile pentru noul program. Primul argument, prin convenție, trebuie să indice numele fișierului asociat cu fișierul în curs de execuție. Gama de indicatoaretrebuie sa să fie încheiat de aNUL pointer.

execle funcția specifică, de asemenea, mediul procesului executat urmând următoareleNULpointer care încheie lista de argumente din lista de parametri sau indicatorul la tabloul argv cu un parametru suplimentar. Acest parametru suplimentar este un tablou de indicatoare către șiruri terminate cu nul șitrebuie sa să fie încheiat de aNUL pointer. Celelalte funcții preiau mediul pentru noua imagine de proces din variabila externăEnviron în procesul curent.

Unele dintre aceste funcții au semantică specială.

Funcțiileexeclp șiexecvp va dubla acțiunile shell-ului în căutarea unui fișier executabil dacă numele fișierului specificat nu conține un caracter slash (/). Calea de căutare este calea specificată în mediu de cătreCALE variabil. Dacă această variabilă nu este specificată, se utilizează calea implicită ``: / bin: / usr / bin ''. În plus, anumite erori sunt tratate în mod special.


Dacă permisiunea este refuzată pentru un fișier (încercareaexecve întorsEACCES), aceste funcții vor continua căutarea în restul căii de căutare. Dacă nu este găsit niciun alt fișier, acestea vor reveni cu variabila globalăerrno setat laEACCES.

Dacă antetul unui fișier nu este recunoscut (încercatexecve întorsENOEXEC), aceste funcții vor executa shell-ul cu calea fișierului ca prim argument. (Dacă această încercare nu reușește, nu se mai face căutare.)

Valoare returnată

Dacă vreuna dinExec funcțiile se întorc, o eroare va fi avut loc. Valoarea returnării este -1, iar variabila globalăerrno va fi setat pentru a indica eroarea.

Foloseșteom comanda (% om) pentru a vedea cum este folosită o comandă pe computerul dvs. particular.

Nume

execl, execlp, execle, execv, execvp - executați un fișier


Rezumat

#include

extern char ** mediu;

int executl (const char *cale, const char *arg, ...); int executlp (const char *fişier, const char *arg, ...); int execle (const char *cale, const char *arg , ..., char * constenvp[]); int execv (const char *cale, char * constargv[]); int execvp (const char *fişier, char * constargv[]);  

Noi Recomandăm

Postari Populare

Ce este un fișier CONTACT?
Software-Ul

Ce este un fișier CONTACT?

Un fișier cu extenia de fișier CONTACT ete un fișier Window Contact. unt utilizate în Window 10, Window 8, Window 7 și Window Vita. Fișierele CONTACT unt fișiere bazate pe XML care tochează info...
Sony ICD-UX560 Review
Tehnologies

Sony ICD-UX560 Review

Redactorii noștri cercetează, tetează și recomandă independent cele mai bune produe; puteți afla mai multe depre proceul notru de revizuire aici. Ete poibil ă primim comiioane la achizițiile făcute d...