【发布时间】:2020-03-09 20:59:51
【问题描述】:
以下是我想要每分钟运行一次的名为test.R 的非常简单的 Rscript
print("Hello, World!")
我想自动化这个脚本,希望我可以为未来的脚本做同样的事情。我使用crontab -e 调用并添加以下内容:
* * * * * Rscript home/<username>/test.R
没有产生任何结果。
根据cron job to execute r script not working 和Schedule a Rscript crontab everyminute 的例子,我在crontab 代码中做了以下变化
* * * * * Rscript "home/<username>/test.R"
* * * * * usr/bin/Rscript home/<username>/test.R
* * * * * usr/bin/Rscript "home/<username>/test.R"
* * * * * cd home/<username>/ && Rscript test.R
* * * * * cd home/<username>/ && usr/bin/Rscript test.R
所有这些都什么都不做。我还创建了一个名为myScript.sh 的脚本,其中包含Rscript /home/<username>/test.R,并尝试将任务* * * * * home/<username>/myScript.sh 全部分配无济于事。
我已确保预先运行 chmod +x 以使我的文件可执行,并且只需键入 Rscript test.R 即可产生我想要的结果。
我还能做些什么来完成这项工作?我运行 Ubuntu Server 18.04 与运行桌面版本有什么问题吗?
更新
我已经运行了所有上述变体,/ 在 home 和 usr 之前。我也转而尝试~/test.R,但仍然没有结果。
【问题讨论】:
-
在
home前面加上一个斜线,即改成/home/<username>/test.R或同样的~/test.R。 -
我尝试了您的建议,并更新了我的问题以反映这一点。它仍然无法正常工作。每当我更新 cron 作业时,我是否必须运行某种命令?
-
这是基本的 Unix,这里会有数百个几乎相同的问题,还有 unix stackexchange 站点和 sysadmin stackexchange 站点。执行
date > /tmp/filestamp.txt,然后您会看到它何时运行。从那里开始。
标签: r cron ubuntu-18.04 ubuntu-server rscript