Зміст
Theвиконувати сімейство функцій замінює поточний образ процесу новим зображенням процесу. Описані тут функції є передніми для функціївиконувати(2).
Початковий аргумент для цих функцій - це ім'я файлу, який повинен бути виконаний.
Theconst char * arg і наступні еліпси вexecl, execlp, іексел функції можна вважати якarg0, arg1, ..., аргн. Разом вони описують список одного або декількох покажчиків на рядки з нульовим завершенням, які представляють список аргументів, доступний виконаній програмі. Перший аргумент, за умовою, повинен вказувати на ім'я файлу, пов'язане з файлом, який виконується. Список аргументівповинен припиняється аНУЛЬ покажчик.
Theexecv іexecvp Функції надають масив покажчиків на рядки з нульовим завершенням, які представляють список аргументів, доступний новій програмі. Перший аргумент, за умовою, повинен вказувати на ім'я файлу, пов'язане з файлом, який виконується. Масив покажчиківповинен припиняється аНУЛЬ покажчик.
Theексел Функція також задає середовище виконуваного процесу, дотримуючисьНУЛЬпокажчик, який припиняє список аргументів у списку параметрів або вказівник на масив argv з додатковим параметром. Цей додатковий параметр є масивом покажчиків на нульові завершені рядки таповинен припиняється аНУЛЬ покажчик. Інші функції приймають середовище для нового зображення процесу із зовнішньої змінноїоточення в поточному процесі.
Деякі з цих функцій мають особливу семантику.
Функціїexeclp іexecvp буде дублювати дії оболонки в пошуку виконуваного файлу, якщо вказане ім’я файлу не містить символу косого (/). Шлях пошуку - це шлях, визначений у середовищіПАТ змінна. Якщо ця змінна не вказана, використовується за замовчуванням шлях ``: / bin: / usr / bin ''. Крім того, певні помилки трактуються спеціально.
Якщо дозволу для файлу відмовлено (спробавиконувати повернувсяEACCES) ці функції продовжуватимуть пошук решти шляху пошуку. Якщо іншого файлу не знайдено, вони повернуться із глобальною змінноюerrno встановлений вEACCES.
Якщо заголовок файлу не розпізнається (спробавиконувати повернувсяENOEXEC), ці функції будуть виконувати оболонку з шлях до файлу як її перший аргумент. (Якщо ця спроба не вдалася, подальший пошук не проводиться.)
Повернене значення
Якщо хтось ізвиконувати функції повертаються, сталася помилка. Повернене значення - -1, а глобальна зміннаerrno буде встановлено, щоб вказати на помилку.
Використовуватилюдина команда (% чоловік), щоб побачити, як команда використовується на вашому конкретному комп'ютері.
Ім'я
execl, execlp, execle, execv, execvp - виконати файл
Конспект
#включати зовнішній чар ** оточення; int execl (const char *шлях, char char *арг, ...); int execlp (const char *файл, char char *арг, ...); int execle (const char *шлях, char char *арг , ..., char * constоточувати[]); int execv (const char *шлях, char * constаргв[]); int execvp (const char *файл, char * constаргв[]);