#define AP_FILE "/opt/mayAPP" //换成你要重启的程序
// socketid: 为绑定的套接字值
int ReRunAPP()
{
// 修改程序权限为777
if (chmod(AP_FILE, 0777) == -1) {
return 1;
}
//关闭套接字,防止重启端口占用
close(socketid);
// 重启程序(这里使用fork+exec的方式)
pid_t pid = fork();
if (pid == -1) {
return 3;
} else if (pid == 0) { // 子进程
//重启程序
execlp(AP_FILE, AP_FILE, NULL);
perror("execlp failed"); // 如果执行到这里,说明execlp失败
return 4;
}
else { // 父进程执行以下代码
wait(NULL); // 等待子进程结束
exit(0);
}
return 0;
}
linux+C修改文件权限且重启服务器
最新推荐文章于 2024-08-06 09:41:49 发布