Skip to main content

Vše o příkazu Linux / Unix: execvp

TEK ÇANAK ANTEN İLE TURKSAT ve ASTRA 5B UYDULARI (Smět 2025)

TEK ÇANAK ANTEN İLE TURKSAT ve ASTRA 5B UYDULARI (Smět 2025)
Anonim

Theexec skupina funkcí nahrazuje současný obraz procesu novým obrazem procesu. Zde popsané funkce představují přednosti této funkcevykonat(2).

Počátečním argumentem pro tyto funkce je cesta k souboru, který má být proveden.

The const char * arg a následné elipsy vexecl, execlp, aexecle funkce lze považovat za arg0 , arg1 , …, argn . Společně popisují seznam jednoho nebo více ukazatelů na řetězce s nulovými konci, které představují seznam argumentů dostupného pro spuštěný program. První argument podle konvence by měl odkazovat na název souboru přidružený k spuštěnému souboru. Seznam argumentů musí být ukončen aNULA ukazatel.

Theexecv aexecvp funkce poskytují pole ukazatelů na null-terminated řetězce, které představují seznam argumentů k dispozici nového programu. První argument podle konvence by měl odkazovat na název souboru přidružený k spuštěnému souboru. Pole ukazatelů musí být ukončen aNULA ukazatel.

Theexecle funkce také specifikuje prostředí provedeného procesu pomocí příkazuNULAukazatel, který ukončí seznam argumentů v seznamu parametrů nebo ukazatel na pole argv s dalším parametrem. Tento dodatečný parametr je pole ukazatelů na řetězce ukončené null a musí být ukončen aNULA ukazatel. Ostatní funkce berou prostředí pro nový procesový obrázek z externí proměnné environ v současném procesu.

Některé z těchto funkcí mají speciální sémantiku.

Funkceexeclp aexecvp bude duplikovat akce shellu při hledání spustitelného souboru, pokud zadaný název souboru neobsahuje znak lomítka (/). Vyhledávací cesta je cesta zadaná v prostředí pomocí příkazuCESTA proměnná. Není-li tato proměnná zadána, použije se výchozí cesta ``: / bin: / usr / bin ''. Kromě toho se s některými chybami zachází speciálně.

Pokud je pro soubor odepřen oprávnění (pokus o pokusvykonat vrátilEACCES), tyto funkce budou pokračovat v hledání ve zbývající části vyhledávací cesty. Pokud však není nalezen žádný jiný soubor, vrátí se s globální proměnnou errno nastaven naEACCES.

Není-li záhlaví souboru rozpoznán (pokus o pokusvykonat vrátilENOEXEC), tyto funkce spustí shell jako cestu k souboru jako první argument. (Pokud tento pokus selže, není provedeno žádné další vyhledávání.)

Návratová hodnota

Pokud některý z nichexec funkce se vrátí, dojde k chybě. Hodnota návratu je -1 a globální proměnná errno bude nastaven tak, aby indikoval chybu.

Důležité: Použijte muž příkaz ( % muž ), abyste zjistili, jak je v daném počítači použit příkaz.

název

execl, execlp, execle, execv, execvp - spuštění souboru

Synopse

#zahrnout

externí char ** prostředí;

int execl (const char * cesta , const char * arg , …); int execlp (const char * soubor , const char * arg , …); int execle (const char * cesta , const char * arg , …, char * const envp ); int execv (const char * cesta , char * const argv ); int execvp (const char * soubor , char * const argv );