從c程序訪問(wèn)退出代碼

我試圖在國(guó)際上找到解決辦法,但論壇一直說(shuō)這是不可能的,所以我在這里提出我的問(wèn)題。shell(任何類似bash的shell)如何跟蹤exit codes。是他們的孩子跟蹤過(guò)程嗎?(如果是這樣的話,我如何在一個(gè)創(chuàng)建并殺死許多子進(jìn)程的程序中實(shí)現(xiàn)這樣的東西)或者是否有一個(gè)全局變量可以在c中訪問(wèn)$??或者他們把它保存在一個(gè)文件里?

? 最佳回答:

下面是在不存在的路徑上執(zhí)行g(shù)rep并在父級(jí)中獲取返回代碼的示例:

code:

#include <errno.h>
#include <sys/wait.h>
#include <stdio.h>
#include <unistd.h>


int main(int argc, char* argv[]) {

    pid_t childPid;
    switch(childPid = fork()) {
    case -1:
        fprintf(stderr, "Error forking");
        return 1;
    case 0:
        printf("CHILD: my pid is: %d\n", getpid());
        int ret = execlp(argv[1], argv[1], argv[2], argv[3], (char *) NULL);
        if (ret == -1) {
            printf("CHILD: execv returned: %d\n", errno);
            return errno;
        }
        break;
    default:
        printf("I am the parent with a child: %d\n", childPid);
        int childRet;
        wait(&childRet);
        printf("PARENT, child returned: %d\n", childRet >> 8);
    }
    return 0;
}
 

Execution:

# Example of Failure execution:

[ttucker@zim c]$ cc -o stackoverflow so.c && ./stackoverflow grep test /does/not/exists
I am the parent with a child: 166781
CHILD: my pid is: 166781
grep: /does/not/exists: No such file or directory
PARENT, child returned: 2

# Example of a successful execution:

[ttucker@zim c]$ cc -o stackoverflow so.c && ./stackoverflow echo foo bar
I am the parent with a child: 166809
CHILD: my pid is: 166809
foo bar
PARENT, child returned: 0

主站蜘蛛池模板: 亚洲国产成人久久一区久久| 激情综合丝袜美女一区二区 | 亚洲第一区精品观看| 久久久久女教师免费一区| 亚洲视频免费一区| 性色A码一区二区三区天美传媒 | 亚洲一区二区三区在线| 国产内射在线激情一区| 久久婷婷色综合一区二区| 在线观看精品视频一区二区三区 | 一区二区三区免费在线视频 | 东京热人妻无码一区二区av| 日韩一区二区免费视频| 亚洲一区二区无码偷拍| ...91久久精品一区二区三区| 麻豆精品久久久一区二区| 国产在线观看一区二区三区精品| 一区 二区 三区 中文字幕| 国产在线观看一区二区三区| 国产一区二区三区电影| 美女AV一区二区三区| 国产精品538一区二区在线| 国产精品亚洲一区二区三区在线观看 | 国产亚洲日韩一区二区三区 | 亚洲一区精彩视频| 激情亚洲一区国产精品| 亚洲国产激情在线一区| 亚洲综合激情五月色一区| 久热国产精品视频一区二区三区| 亚洲码欧美码一区二区三区| 精品国产一区二区三区av片| 国产成人一区二区三区免费视频 | 少妇精品久久久一区二区三区 | 在线免费视频一区| 一区 二区 三区 中文字幕 | 大帝AV在线一区二区三区| 成人在线一区二区| 久久国产免费一区二区三区| 波多野结衣久久一区二区| 国产一区二区三区小向美奈子| 一区二区中文字幕在线观看|