类似的可以像下面一样改写
#include <unistd.h>
#include <stdlib.h>
int main( int argc , char *argv[] )
{
int pid = fork();
if( pid > 0 )
exit(0);
if( pid == 0 )
{
setsid();
execl( argv[1], argv[1] , (char *)0 );//这里的argv[1],传递的是你原来的程序的路径
}
return 0;
}
然后把这个程序编译了,假设名字是run-daemon,要定时启动的程序是/bin/ftsscan,那个可以使用run-daemon /bin/ftsscan将它作为守护进程启动。
如果是有那个程序的源码的话,那么直接把execl部分替换成要启动程序的源码编译好,直接启动那个程序就好了