Linux c 应用程序execv自动重启方法

参考资料:linux下c/c++程序重启自己-帅得不敢出门-ChinaUnix博客

vi auto_startself.c

#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>


int main(int argc,char *argv[])
{
        char buf[32] ={};
        char *exec_argv[] = {argv[0],buf,0};
        int count = argc > 1 ? atoi(argv[1]) : 0;
        printf("Runing:%s %d\n",argv[0],count);
        snprintf(buf,sizeof(buf),"%d",count +1);
        sleep(5);

        execv("/proc/self/exe",exec_argv);


        return 0;
}

 

posted @ 2022-05-10 07:54  大龄小凡  阅读(500)  评论(0)    收藏  举报