java - 以编程方式将 cron 作业写入 crontab 文件无法运行

标签 java linux cron crontab

我正在使用以下 java 代码将 cron 作业写入我的 crontab 文件

PrintWriter writer = new PrintWriter("/var/spool/cron/crontabs/multi","UTF-8");
        String cronTabString="25 13 * * * sudo wget --tries=0  \"https://some-url.com:7443/DataUpdater/updateChildren?folderId="+folderId+"&clientId="+clientId+"&clientSecret="+clientSecret+"&refreshToken="+refreshToken+"&deptName="+deptName+"\"";
        writer.println(cronTabString);
        writer.close();

代码已成功写入 cron 选项卡文件。但它不运行。我的问题是,是否有可能以这种方式执行 cron 作业?根据我的说法,这是一个有效的 cron 选项卡条目,因此应该执行它。我在这里遗漏了什么吗?

最佳答案

尝试以下操作:

crontab -r
crontab /var/spool/cron/crontabs/multi

(编辑)我相信 Java,你可以这样调用它们:

Runtime.getRuntime().exec("crontab -r");
Runtime.getRuntime().exec("crontab /var/spool/cron/crontabs/multi");

第一个删除现有的 crontab。第二个安装新的 crontab。然后你可以通过做验证:

crontab -l

关于java - 以编程方式将 cron 作业写入 crontab 文件无法运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39103621/

相关文章:

java - JPA:JQL 和 SQL 的区别

java - <?> 在 Java 中代表什么?

java - 理解AES加密代码的解释

php - 杀死用popen()打开的进程?

linux - 用于在 Linux 上进行测试的 Web 服务器

php - Cron 作业的输出与在浏览器中运行脚本不同

java - Java swing中JTabbedPane如何实现四侧阴影效果?

linux - 为什么 cron 执行的部分脚本会失败,除非将 stderr 定向到/dev/null?

ruby-on-rails - 每当 cron 作业无法运行时

linux - 在特定时间运行 cronjob