exec(3) Library Functions Manual exec(3) execl, execlp, execle, execv, execvp, execvpe - (libc -lc) #include extern char **environ; int execl(const char *path, const char *arg, ... /*, (char *) NULL */); int execlp(const char *file, const char *arg, ... /*, (char *) NULL */); int execle(const char *path, const char *arg, ... /*, (char *) NULL, char *const envp[] */); int execv(const char *path, char *const argv[]); int execvp(const char *file, char *const argv[]); int execvpe(const char *file, char *const argv[], char *const envp[]); glibc ( feature_test_macros(7)): execvpe(): _GNU_SOURCE exec() . execve(2). ( execve(2) .) . "exec". l - execl(), execlp(), execle() const char *arg arg0, arg1, ..., argn. . . (char *) NULL. 'l' 'v' () . v - execv(), execvp(), execvpe() char *const argv[] . . . e - execle(), execvpe() envp. envp . exec() ( 'e' ) environ . p - execlp(), execvp(), execvpe() (/). PATH. confstr(_CS_PATH) ( "/bin:/usr/bin") VERSIONS . execvpe() PATH envp. PATH . . ( execve(2) EACCES) . errno EACCES. ( execve(2) ENOEXEC) (/bin/sh) . ( .) exec() ( 'p' ) ( ) . exec() . -1 errno . errno execve(2). attributes(7). +----------------------+------------------------------------+------------------------------------------------------------------------+ | | | | +----------------------+------------------------------------+------------------------------------------------------------------------+ |execl(), execle(), | | MT-Safe | |execv() | | | +----------------------+------------------------------------+------------------------------------------------------------------------+ |execlp(), execvp(), | | (MT-Safe) | |execvpe() | | | +----------------------+------------------------------------+------------------------------------------------------------------------+ ( PATH) . /bin /usr/bin ( ) . /bin /usr/bin . glibc . glibc 2.24 . . execlp() execvp() POSIX. BSD ( ) ETXTBSY. Linux . execlp() execvp() ENOMEM E2BIG . . environ execl() execlp() execle() execv() execvp() POSIX.1-2008. execvpe() GNU. environ execl() execlp() execle() execv() execvp() POSIX.1-2001. execvpe() glibc 2.11. glibc 2.24 execl() execle() realloc(3) POSIX.1. glibc 2.24. sparc sparc64 execv() ( ) SunOS. execv() . sh(1) execve(2) execveat(2) fork(2) ptrace(2) fexecve(3) system(3) environ(7) 3 . . : . 6.18 17 2025 exec(3)