Форум программистов, компьютерный форум, киберфорум
C/С++ под Linux
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.73/26: Рейтинг темы: голосов - 26, средняя оценка - 4.73
47 / 47 / 3
Регистрация: 07.01.2009
Сообщений: 297

Execl,код возврата

16.12.2009, 20:14. Показов 5608. Ответов 2
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
У меня программа, которая читает из текстового файла текст(команды) и затем выполняет эти командs. Вообще,она мудрёнее, но меня интересует данных кусок. Мне нужно посмотреть код возврата.Как сделать? При exec я не могу этого сделать.
C
1
execl("/bin/ls", "LS",argv[1], NULL);
Exec заменяет текущий образ процесса новым образом процесса, затем вылетает из bash. Как мне посмотреть код возврата "/bin/ls", используя exec ( system("/bin/ls") нельзя использовать! ).
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
16.12.2009, 20:14
Ответы с готовыми решениями:

Вопрос по execl
мне нужно выполнить вот это egrep -o "\b\w{argv}\b" argv для это #include <unistd.h> #include <stdlib.h> int main(int argc,char*...

execl не передает параметры
//1 execl("/home/a/os_3/copy_file/bin/Debug/copy_file", // "copy_file" запускает sendfile(out,in) "home/a/C++/11/file_a", ...

Execl из форкнутого потомка
Доброго, есть код, который должен создавать потомка процесса и из этого потомка вызывать стороннюю программу в данном случае sort, имя...

2
 Аватар для Gravity
577 / 571 / 65
Регистрация: 29.01.2009
Сообщений: 1,274
16.12.2009, 20:54
Да, exec возвращает только -1 в случае ошибки. Но можно проверить код возврата процесса, в котором выполнялся exec.

C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <sys/types.h>
#include <sys/wait.h>
 
int main(void)
{
    int status;
    pid_t pid;
 
    pid = fork();
    if(pid < 0) {
        perror("fork");
        exit(-1);
    } else if(!pid) {
        /* дочерний процесс выполняет ls */
        execl("/bin/ls", "ls", NULL);
        abort();
    }
 
    /* информация о завершенном дочернем процессе */
    pid = wait(&status);
    printf("\nPid %d:\n", pid);
 
    if(WIFEXITED(status))
        printf("Successful exit with status %d\n", WEXITSTATUS(status));
    else if(WIFSIGNALED(status))
        printf("Terminated by signal %d%s\n", WTERMSIG(status), 
                WCOREDUMP(status) ? " (kernel dump)" : "");
    else if(WIFSTOPPED(status))
        printf("Stopped by signal %d\n", WSTOPSIG(status));
    else if(WIFCONTINUED(status))
        printf("Continued\n");
    
    return 0;
}
0
47 / 47 / 3
Регистрация: 07.01.2009
Сообщений: 297
17.12.2009, 17:21  [ТС]
А... Точно, все правильно!!Спасибо.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
17.12.2009, 17:21
Помогаю со студенческими работами здесь

Реализация execvp и execlp через execl и execv
Есть задача: Написать эквиваленты execvp и execlp, используя вызовы execl и execv. Параметры этих процедур должны состоять из списка...

запуск нового процуса спомошью execl , передача сообшений не работает
Доброе время суток Помогите пожалуйста понять в чем проблема ниже приведен код вот главная программа #include...

Неименованный канал для возврата отработаной программы
Пытаюсь организовать трубопровод по каналу которого будет запускаться указаная программа и результат её выполнения будет передан обратно...

Тип возврата функции recv и максимально возможный размер принятого пакета.
Как известно,функция recv возвращает переменную типа ssize_t. А может ли вообще сегмент данных,переданный recv,быть таким большим,как...

Код возврата -1073741819 = 0xC0000005 (исключение, нарушение доступа к памяти) в приложении "калькулятор"
Есть программа калькулятор и в ней в случае нехватки памяти выводится соответствующая ошибка однако проверяющий сказал мне что у меня...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Новые блоги и статьи
Отправка уведомления на почту при изменении наименования справочника
Maks 24.03.2026
Программная отправка письма электронной почты на примере изменения наименования справочника "Склады" в конфигурации БП3. Перед реализацией необходимо выполнить настройку системной учетной записи. . .
модель ЗдравоСохранения 5. Меньше увольнений- больше дохода!
anaschu 24.03.2026
Теперь система здравосохранения уменьшает количество увольнений. 9TO2GP2bpX4 a42b81fb172ffc12ca589c7898261ccb/ https:/ / rutube. ru/ video/ a42b81fb172ffc12ca589c7898261ccb/ Слева синяя линия -. . .
Midnight Chicago Blues
kumehtar 24.03.2026
Такой Midnight Chicago Blues, знаешь?. . Когда вечерние улицы становятся ночными, а ты не можешь уснуть. Ты идёшь в любимый старый бар, и бармен наливает тебе виски. Ты смотришь на пролетающие. . .
Контроль уникальности заводского номера - вариант №2
Maks 24.03.2026
В отличие от предыдущего варианта добавлено прерывание циклов, также добавлены новые переменные для сохранения контекста ошибки перед прерыванием цикла: Процедура ПередЗаписью(Отказ, РежимЗаписи,. . .
SDL3 для Desktop (MinGW): Вывод текста со шрифтом TTF с помощью библиотеки SDL3_ttf на Си и C++
8Observer8 24.03.2026
Содержание блога Финальные проекты на Си и на C++: finish-text-sdl3-c. zip finish-text-sdl3-cpp. zip
Жизнь в неопределённости
kumehtar 23.03.2026
Жизнь — это постоянное существование в неопределённости. Например, даже если у тебя есть список дел, невозможно дойти до точки, где всё окончательно завершено и больше ничего не осталось. В принципе,. . .
Модель здравоСохранения: работники работают быстрее после её введения.
anaschu 23.03.2026
geJalZw1fLo Корпорация до введения программа здравоохранения имела много невыполненных работниками заданий, после введения программы количество заданий выросло. Но на выплатах по больничным это. . .
Контроль уникальности заводского номера - вариант №1
Maks 23.03.2026
Алгоритм контроля уникальности заводского (или серийного) номера на примере документа выдачи шин для спецтехники с табличной частью в конфигурации КА2. Данные берутся из регистра сведений, по. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru