有问题。我编写了一个简单的 C 程序,它以随机间隔调用某些 shell 脚本 - 在它作为 cron 任务运行之前,但由于有很多客户端并且每个客户端都在同一时间运行,我们需要分配负载以避免峰。该脚本本身放置在 /root 目录中,当它由 cron 执行时,它正在处理的所有文件都写入同一目录 - /root/ 中。当我切换到 init.d 服务时,它开始将这些文件写入顶部目录 - / 。
我调用脚本的函数如下所示:
void execute_script(const char* url) {
char command[MAX_URL_LENGTH + 15];
snprintf(command, sizeof(command), "/root/updater.sh \"%s\"", url);
system(command);
}
和 init.d 脚本:
#!/bin/sh /etc/rc.common
START=80
USE_PROCD=1
start_service() {
procd_open_instance
procd_set_param command /usr/bin/rndupd http://URL
procd_set_param respawn
procd_close_instance
}
我怎样才能让这个东西在/root/目录下运行?